2014-02-23 153 views
0

我试着插入一些数据包含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'. 
+0

INSERT INTO [订购](基准,KundId,VaraId,FakturaId,PRI类) VALUES( '2002年1月1日',1,1, 1100); – KumarHarsh

+0

订单=保留字 –

+0

此问题是由简单的印刷错误造成的。虽然类似的问题可能在这里讨论,但这个问题的解决方式不太可能有助于未来的读者。 – Kermit

回答

3

Order是一个保留字。你需要逃避它:

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

由于SturtLC说你使用的保留字的标识符。当您使用保留关键字,空格或特殊标志时,需要用方括号“[]”或“”来分隔标识符。

确保你总是使用[]当您使用delimited identifiers,甚至更好始终尝试使用regular identifiers和遵守的规则,以避免这种错误的:)

下面的SQL Server reserved keywords列表日后参考

希望这给你在这个问题上更深入的了解

相关问题