我试图运行此脚本:标识插入问题
SET IDENTITY_INSERT dbo.Message ON
INSERT INTO dbo.Message
SELECT (Values I want to insert)
当我做我仍然得到错误 *仅可指定表“dbo.Message”的标识列的显式值当使用列列表且IDENTITY_INSERT为ON时。*
我在做什么错?
我试图运行此脚本:标识插入问题
SET IDENTITY_INSERT dbo.Message ON
INSERT INTO dbo.Message
SELECT (Values I want to insert)
当我做我仍然得到错误 *仅可指定表“dbo.Message”的标识列的显式值当使用列列表且IDENTITY_INSERT为ON时。*
我在做什么错?
错误的关键在于“何时使用列列表”。您想要:
SET IDENTITY_INSERT dbo.Message ON
INSERT INTO dbo.Message (column1, column2, ...) -- Added column list here
SELECT (Values I want to insert)
您需要按照错误消息所述进行操作。 - SELECT *
将无法正常工作
INSERT INTO dbo.Message
(col1, col2, col3, col4)
SELECT Col1, col2, col3, col4
FROM OtherTable
你需要的字段列表中INSERT
行之后,你需要在你的SELECT
指定字段名:像格式化你的代码。
您必须提及Insert语句和select子句中的所有列名称。 有些事情是这样的。
插入插入TBL ( [COL1], [COL2] ) 选择 [COL1], [COL2]
记住:SET IDENTITY_INSERT dbo.Message OFF! –