4

我想将日期记录插入 Access 数据库。这是我的代码:

cmd.CommandText = "INSERT INTO AlarmHistory(Date) VALUES ('6/8/2012')"; 
cmd.ExecuteNonQuery(); 

Syntax error in INSERT INTO statement.它在第二行给出错误。

下面是显示我在 db 上的单元格数据类型的屏幕截图。

db 中的单元格数据类型

4

5 回答 5

6

使用参数

cmd.CommandText = "INSERT INTO AlarmHistory([Date]) VALUES (?)";  
cmd.Parameters.AddWithValue("@date", new DateTime(2012,06,8));
cmd.ExecuteNonQuery();

这将从SqlInjection中保留您的代码,您可以不必担心引用您的值-

刚刚尝试创建一个虚拟数据库。这是日期字段。您应该用方括号括起来,因为Date它是保留关键字

这里是Jet 4.0 的保留关键字列表

于 2012-06-14T22:48:10.000 回答
2

也许date是一个保留字。如果是这样,它应该被分隔(可能用括号):

INSERT INTO AlarmHistory([Date]) VALUES ('6/8/2012')
于 2012-06-14T23:02:57.123 回答
1

尝试使用

"INSERT INTO AlarmHistory(Date) VALUES ('#6/8/2012#')"

于 2012-06-14T22:47:03.213 回答
1

您应该在应该解决您的问题的日期周围添加一个 # 符号。

于 2012-06-14T22:48:49.483 回答
0

请记住在创建数据库表之前避免给字段名称 DATE 和 NAME

插入时会报错。例如..给出字段密码,日期而不是那样给出,password_user,bill_date

注意:MS Access 表中的日期和密码不可接受的字段名称 .bcoz 它是一个关键字。

它应该可以解决您的问题

谢谢。拉提娜。

于 2013-10-25T03:41:47.747 回答