插入datetime参数以访问数据库ODBC

时间:2014-09-19 04:28:41

标签: c# datetime odbc

我尝试插入datetime值来访问数据库但总是让我错误;

我的源代码:

cmd.CommandText = "INSERT INTO tblProcessed (name, comment, file_name, seven_zip_name, mode, device_ID,send_date) VALUES(?,?,?,?,?,?,?)";
cmd.Parameters.AddWithValue("", name);
cmd.Parameters.AddWithValue("", comment);
cmd.Parameters.AddWithValue("", Filename);
cmd.Parameters.AddWithValue("", sevenZip);
cmd.Parameters.AddWithValue("", mode);
cmd.Parameters.AddWithValue("", iddev);
cmd.Parameters.AddWithValue("",dati); //when i remove this line wont get any error
cmd.ExecuteNonQuery();

总是让我犯错:

  

[Microsoft] [ODBC Microsoft Access驱动程序]数据类型不匹配   标准表达。“}

send_date字段外,所有字段类型均为字符串... 当我删除send_date字段时,每件事情都正常工作

我如何将日期时间值插入send_date字段?

1 个答案:

答案 0 :(得分:0)

好的,我遇到了同样的问题,这就是我解决它的方法。

我正在使用“AddWithValue”而我只能添加一个直接日期,但我也想要时间部分。

尝试

cmd.Parameters.Add("@send_date", OleDbType.DBTimeStamp).Value = DateTime.Parse(dati.ToString());

从我在别处读到的内容中,add在日期的毫秒部分出现问题,看起来这个方法必须将它们剥离。