我试图在oledb(ms access数据库)中插入一个名为objectdate的字段:日期/时间
我用来添加参数的代码是这样的,但是我得到了错误。
OleDbParameter objectdate = new OleDbParameter("@objectdate", OleDbType.DBDate);
objectdate.Value = DateTime.Now; cmd.Parameters.Add(objectdate);错误:
标准表达式中的
数据类型不匹配.
发布于 2012-05-15 11:53:36
OleDB不喜欢datetime参数中的毫秒。如果你去掉毫秒,它就会正常运行。另见:How to truncate milliseconds off of a .NET DateTime。
发布于 2011-09-23 00:20:57
你可以用。
OleDbParameter objectdate = new OleDbParameter("@objectdate", DbType.DateTime);
objectdate.Value = DateTime.Now; cmd.Parameters.Add(objectdate);或者使用日期的Ole自动化版本。
OleDbParameter objectdate = new OleDbParameter("@objectdate", DbType.DateTime);
objectdate.Value = DateTime.Now.ToOADate(); cmd.Parameters.Add(objectdate);或者,您可以以文字形式输入日期时间,因为Datetime.ToString()删除了访问无法使用的毫秒。
cmd.Parameters.AddWithValue("@objectdate", DateTime.Now.ToString());这应该能行。
发布于 2013-09-24 17:06:45
句子:
OleDbParameter objectdate = new OleDbParameter("@objectdate", DbType.DateTime);未在visual 2008中使用,我使用如下:
ordeen.Parameters.Add(New OleDb.OleDbParameter("objectdate", DbType.DateTime))
ordeen.Parameters("objectdate").Value=object.text 'but its not run下一句仅在sqlserver中起作用:
cmd.Parameters.AddWithValue("@objectdate", DateTime.Now.ToString());进入的问题还在继续。
https://stackoverflow.com/questions/7522924
复制相似问题