2013-01-13 93 views
0

如何將精細查詢的結果輸出到名爲「customerDataGridView」的datagrid視圖?選擇查詢SQL C#如何將結果輸出到DataGrid

string strCon = Properties.Settings.Default.PID2dbConnectionString; 

using (OleDbConnection conn = new OleDbConnection(strCon)) { 
    conn.Open(); 
    string strSql = "SELECT * FROM customer WHERE City =Belfast"; 
    OleDbDataAdapter adapter = new OleDbDataAdapter(new OleDbCommand(strSql, conn)); 
} 

感謝您的幫助!

回答

2

嘗試這樣的ASP.Net:

DataSet ds = new DataSet(); 
OleDbDataAdapter oledbAdapter = New OleDbDataAdapter(strSql, connection); 
oledbAdapter.Fill(ds); 
customerDataGridView.DataSource = ds.Tables(0); 
customerDataGridView.DataBind(); 

或者像這樣的的WinForms:

DataSet ds = new DataSet(); 
OleDbDataAdapter oledbAdapter = New OleDbDataAdapter(strSql, connection); 
oledbAdapter.Fill(ds); 
customerDataGridView.DataSource = ds.Tables(0); 

好運。

+0

下 「.databind();」和「ds.Tables(0);」我得到一個錯誤說:「錯誤'System.Windows.Forms.DataGridView'沒有包含'Databind'的定義,也沒有擴展方法'Databind'接受類型'System.Windows.Forms.DataGridView'的第一個參數可以找到(你是否缺少使用指令或程序集引用?)\t「 – Bunion

+0

對不起,DataBind – sgeddes

+0

我似乎沒有這樣的事情,離DataBind最近的是DataBindings,maby im缺少一個庫? – Bunion

0

試試你的代碼之後的情況如下:

DataTable table = new DataTable(); 
adapter.Fill(table); 
customerDataGridView.AutoGenerateColumns = True 
customerDataGridView.Datasource = table; 
+0

」我得到一個錯誤說:「錯誤'System.Windows.Forms.DataGridView'沒有包含'Databind'的定義,也沒有擴展方法'Databind'接受類型'System.Windows.Forms.DataGridView'的第一個參數可以找到(您是否缺少使用指令或程序集引用?)\t「 – Bunion

+0

嘗試刪除Databind(),您可能不需要它在Windows窗體中。但一定要設置dataGridView1.AutoGenerateColumns = True。參考這個:http://stackoverflow.com/questions/1449773/c-sharp-windows-forms-basic-data-grid。他們說數據源處理綁定。 – Laila

0

試試這個

DataSet ds = new DataSet(); 
OleDbDataAdapter oda = New OleDbDataAdapter(strSql, conn); 
oda.Fill(ds); 
customerDataGridView.DataSource = ds.Tables(0); 

對於WinForm控件你不需要DataBind()