我试着插入一些数据包含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 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'.
Order是一个保留字。你需要逃避它:
INSERT INTO [Order] (Datum,KundId,VaraId,FakturaId,Pris)
VALUES ('2002-1-1',1,1,1,100);
INSERT INTO [Order] (Datum,KundId,VaraId,FakturaId,Pris) VALUES ('2002-1-1',1,1,1,100);
由于SturtLC说你使用的保留字的标识符。当您使用保留关键字,空格或特殊标志时,需要用方括号“[]”或“”来分隔标识符。
确保你总是使用[]当您使用delimited identifiers,甚至更好始终尝试使用regular identifiers和遵守的规则,以避免这种错误的:)
下面的SQL Server reserved keywords列表日后参考
希望这给你在这个问题上更深入的了解
INSERT INTO [订购](基准,KundId,VaraId,FakturaId,PRI类) VALUES( '2002年1月1日',1,1, 1100); – KumarHarsh
订单=保留字 –
此问题是由简单的印刷错误造成的。虽然类似的问题可能在这里讨论,但这个问题的解决方式不太可能有助于未来的读者。 – Kermit