关键字''附近的语法不正确。尝试插入时

时间:2014-02-23 14:15:19

标签: sql-server sql-insert

我试图将一些数据插入到包含3个FK

的表中

声明:

INSERT INTO Order (Datum,KundId,VaraId,FakturaId,Pris)
VALUES ('2002-1-1',1,1,1,100);

给出:

Field Message
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'Order'.

3 个答案:

答案 0 :(得分:3)

Order是保留字。你需要逃脱它:

INSERT INTO [Order] (Datum,KundId,VaraId,FakturaId,Pris)
VALUES ('2002-1-1',1,1,1,100);

答案 1 :(得分:0)

INSERT INTO [Order] (Datum,KundId,VaraId,FakturaId,Pris) VALUES ('2002-1-1',1,1,1,100);

答案 2 :(得分:0)

正如SturtLC所说,你使用保留关键字作为标识符。当您使用保留关键字,空格或特殊符号时,您需要使用方括号“[]”或“”来分隔标识符。

确保在使用delimited identifiers时始终使用[],或者更好的是始终尝试使用regular identifiers并遵守规则以避免此类错误:)

此处列出了SQL Server reserved keywords以供将来参考

希望这能让您更深入地了解这个问题