我想将日期记录插入Access数据库。这是我的代码:
cmd.CommandText = "INSERT INTO AlarmHistory(Date) VALUES ('6/8/2012')";
cmd.ExecuteNonQuery();
第二行出现Syntax error in INSERT INTO statement.
错误。
在db上显示我的单元格数据类型的屏幕截图如下所示。
答案 0 :(得分:6)
使用参数
cmd.CommandText = "INSERT INTO AlarmHistory([Date]) VALUES (?)";
cmd.Parameters.AddWithValue("@date", new DateTime(2012,06,8));
cmd.ExecuteNonQuery();
这会保留您SqlInjection的代码,您可以停止担心引用您的值 -
刚尝试创建虚拟数据库。这是日期字段。您应该用方括号括起来,因为Date
是保留关键字
Here the list Jet 4.0的保留关键字
答案 1 :(得分:2)
也许date
是保留字。如果是这样,它应该被分隔(可能带括号):
INSERT INTO AlarmHistory([Date]) VALUES ('6/8/2012')
答案 2 :(得分:1)
尝试使用
"INSERT INTO AlarmHistory(Date) VALUES ('#6/8/2012#')"
答案 3 :(得分:1)
您应该在解决问题的日期周围添加#符号。
答案 4 :(得分:0)
请在创建数据库表之前记住,避免给出字段名称DATE和NAME
插入时会抛出错误。 eg..give字段密码,日期而不是像那样给出,password_user,bill_date
注意:MS Access表格中的日期和密码不可接受字段名称.bcoz它是一个关键字。
它应该解决您的问题
感谢。 Rathina。