C# SQL插入错误

C# SQL插入错误,c#,ms-access,C#,Ms Access,我正在使用此SQL命令插入一条记录 插入部署(日期时间、类型、品牌、型号、序列号、分配) 值('2013年5月20日'、'LAPTOP'、'ASUS'、'K55V'、'ABCD1234'、'10F HRD') 但是一个错误突然出现了,说 INSERT INTO语句中的语法错误 DateTime是一种文本类型。我该怎么办?我认为如果您尝试在查询中使用保留字(如上所述),可能会发生此错误。尝试将DateTime列括在括号中: INSERT INTO Deployment ([DateTime], T

我正在使用此SQL命令插入一条记录

插入部署(日期时间、类型、品牌、型号、序列号、分配) 值('2013年5月20日'、'LAPTOP'、'ASUS'、'K55V'、'ABCD1234'、'10F HRD')

但是一个错误突然出现了,说

INSERT INTO语句中的语法错误


DateTime是一种文本类型。我该怎么办?

我认为如果您尝试在查询中使用保留字(如上所述),可能会发生此错误。尝试将
DateTime
列括在括号中:

INSERT INTO Deployment ([DateTime], Type, Brand, Model, SerialNo, Assignment) VALUES ('May 20, 2013','LAPTOP','ASUS','K55V','ABCD1234','10F HRD');

可能更好的解决方案是更改该列名。

日期时间和类型都是。在
INSERT
语句中用方括号将两者括起来

INSERT INTO Deployment ([DateTime], [Type], Brand, Model, SerialNo, Assignment)
VALUES ('May 20, 2013','LAPTOP','ASUS','K55V','ABCD1234','10F HRD');

下载Allen Browne的免费软件,并使用它检查Access db文件。除了有问题的对象名称外,它还可以提醒您注意数据库中的其他问题。

您的语法看起来正常,因此请检查所有类型是否正确。这些字符串中的任何一个对于它们的列来说都太长了吗?所有的列都是字符串,最多限制为50个字符。不过,我想将DateTime更改为实际的DateTime类型。我试图在C#上插入此代码,但总是出现此错误。我想DateTime类型可能是个问题谢谢Ben Reich。该代码适用于MS Access,但不适用于C#。您是否有更多的想法插入带有日期的记录?您是否有能力重命名该列?如果是这样,我建议你试试。我已经重命名了这个专栏。错误仍然存在。感谢您的帮助,Ben Reich。表是否有插入可能违反的任何约束(主键、唯一键、外键)?我有一个带有主键的自动编号类型列。就这些了,我能问你吗,汉瑟?我要用夏普(#)来表示日期吗?不,您说过[DateTime]是文本数据类型,所以将日期值用引号括起来,引号与您为所有其他文本字段提供的值相同。