在使用中獲得此代碼更新日期時間的Fileds PARAMS訪問如何運行查詢使用參數
SQL = "update ConfTbl set D_from = @MyFrom , D_to = @MyTo where Code = " + Convert.ToInt32(TmpCode1) + "";
OleDbCommand Cmd = Conn.CreateCommand();
OleDbParameter dateparam1 = Cmd.Parameters.AddWithValue("@MyFrom", DbType.DateTime);
dateparam1.Value = dt_From.Value;
OleDbParameter dateparam2 = Cmd.Parameters.AddWithValue("@MyTo", DbType.DateTime);
dateparam2.Value = dt_To.Value;
Cmd.CommandText = SQL;
Cmd.ExecuteNonQuery();
如何改變這種對運行查詢兩個日期之間找到?
財產以後這樣的:select * from ConfTbl where Tdate >= #MyFrom# and Tdate <= #MyTo#
我試試這個:
SQL = @"select * from ReturnConfTbl where Tdate >= @MyFrom and Tdate <= @MyTo";
OleDbCommand Cmd = Conn.CreateCommand();
OleDbParameter dateparam1 = Cmd.Parameters.AddWithValue("@MyFrom", DbType.DateTime);
dateparam1.Value = dt_from_A.Value;
OleDbParameter dateparam2 = Cmd.Parameters.AddWithValue("@MyTo", DbType.DateTime);
dateparam2.Value = dt_to_A.Value;
Cmd.CommandText = SQL;
Cmd.ExecuteNonQuery();
adp = new OleDbDataAdapter(SQL, Conn);
adp.Fill(dsView, "ReturnConfTbl");
adp.Dispose();
this.dataGridView3.DataSource = dsView.Tables[0].DefaultView;
,並得到這個錯誤:Data type mismatch in criteria expression
。
這是一個非常直接的變化。你能提供一些你沒有用過的代碼嗎? –
是否因爲你的參數是DBNull.Value? – hoodaticus