以下脚本无法执行
SET IDENTITY_INSERT dbo.MyTable ON
-- the table only has three columns, so there's no ambiguity
INSERT INTO dbo.MyTable
VALUES (1, 2, 3)
SET IDENTITY_INSERT OFF
这会引发以下警告:
只有在使用列列表并且 IDENTITY_INSERT 为 ON 时,才能为表 'dbo.MyTable' 中的标识列指定显式值。
当列是明确的时,脚本会按预期执行。
SET IDENTITY_INSERT dbo.MyTable ON
INSERT INTO dbo.MyTable (ColA, ColB, ColC)
VALUES (1, 2, 3)
SET IDENTITY_INSERT OFF
为什么必须使用列列表?