向Ms-Access数据库插入日期的问题 [英] Problem with inserting date to Ms-Access database
本文介绍了向Ms-Access数据库插入日期的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在我的 Ms-Access
数据库表中以短日期格式的日期字段。
I have in my Ms-Access
database table, a date field in Short Date format.
I在我的C#程序中 DateTimePicker
控制在 dd / MM / yyyy
short
日期格式
I have in my C# program DateTimePicker
control in dd/MM/yyyy
short
date format
我尝试使用C#代码插入数据,如下所示:
I try to insert data using C# code like this:
SQL = "insert into MyTbl(D_from,D_to) values (@MyFrom,@MyTo)";
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();
我收到错误:条件表达式中的数据类型不匹配。 code>
and I got the error: Data type mismatch in criteria expression.
推荐答案
将Parameters.AddWithValue更改为Parameters.Add
change Parameters.AddWithValue to Parameters.Add
Cmd.Parameters.Add("@MyFrom", DbType.DateTime);
如果您使用 Parameters.AddWithValue
那么你需要将值
作为第二个参数
,而不是DataType
if you use Parameters.AddWithValue
then you need to pass the Value
as Second Parameter
, not the DataType
Cmd.Parameters.AddWithValue("@MyFrom", dt_From.Value);
还需要设置 CommandType
作为文本
这篇关于向Ms-Access数据库插入日期的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文