我想用C#在一個OleDbConnection上的Access數據庫執行SQL命令,並使用該信息來填充在Windows窗體上一個DataGridView。我打開了連接,說明了查詢並執行了它,但是我找不到如何將結果輸出到窗體上的DataGridView(名爲dataOutput)。執行SQL命令,並輸出結果的DataGridView在C#
private void Query()
{
string cmdText = "SELECT * FROM RetentionTable " +
"WHERE [DateTime] BETWEEN '" + getDateTimeFrom("") + "' AND '" + getDateTimeTo("") + "'";
string ConnectionPath = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=RetentionDB.mdb";
try
{
OleDbConnection cn = new OleDbConnection(ConnectionPath);
DataSet objDataSet = new DataSet();
OleDbDataAdapter objDataAdapter = new OleDbDataAdapter();
if (cn.State.Equals(ConnectionState.Closed))
{
cn.Open();
}
OleDbCommand OleDbSearch = new OleDbCommand(cmdText, cn);
OleDbSearch.ExecuteNonQuery();
objDataAdapter.Fill(objDataSet);
dataOutput.DataSource = objDataSet;
cn.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
MessageBox.Show(ex.StackTrace.ToString());
}
}
從我所看到的,是被正確執行查詢,但試圖使用objDataAdapter.Fill當問題來了。我想我不理解如何用查詢的輸出填充DataSet。任何幫助將非常感激。謝謝!
所以我做了這個,它似乎正在執行,但有沒有數據顯示在網格視圖中,它只顯示沒有條目,我有AutoGenerateColuns = true,但沒有數據。 – 1337Atreyu