MSSQL 插入索引作为提示

MSSQL Insert Index as hint

目前我正在修改一些 mssql 和一个朋友创建的数据库。一切正常,除了一个插入语句。

我正在尝试从前端获取数据并将其放入表中。在稍微修改并失败后,我遇到了以下错误。

Incorrect syntax near 'INDEX'. 
If this is intended as a part of a table hint, A WITH keyword and parenthesis are now required.

我的插入语句如下所示。

INSERT INTO TestTable (SomeID,PointID) VALUES (?,?) WITH Index(?)'

那个?是占位符,因为我用 Python Lib (PyODBC)

干杯!

Index 是 SQL 服务器(以及我所知道的所有其他 DMBS)中的保留字,因此您需要使用 [] 来区分您的列名索引关键字索引,即

INSERT INTO TestTable (SomeID,[Index],PointID) VALUES (?,?,?). 

避免使用保留字或特殊字符命名任何对象通常是个好主意,因为它会导致与此完全相同的问题。