IDENTITY_INSERT ON失败,错误"...不是用户表.无法执行SET操作"

bra*_*287 5 sql sql-server

我不小心删除了数据库中的一行,我想重新插入该行.问题是主键设置为自动增量,IDENTITY INSERT并设置OFF为表.我想暂时启用标识插入,这样我就可以插入已删除的行,然后禁用标识插入.

在SQL Server Management Studio中,我尝试了以下操作:

SET IDENTITY_INSERT myTable ON

INSERT INTO myTable (id, name, value)
VALUES (241, 'hello', 'hello2')

SET IDENTITY_INSERT myTable OFF
Run Code Online (Sandbox Code Playgroud)

第一行失败了:

消息8105,级别16,状态1,行
2'myTable'不是用户表.无法执行SET操作.

知道为什么吗?

Kei*_*ton 5

错误描述:http: //www.sql-server-performance.com/2007/not-a-user-table-cannot-perform-set-operation/

myTable似乎并不是一张桌子.

试试这个:

SELECT * FROM sysobjects WHERE name = ‘myTable’
Run Code Online (Sandbox Code Playgroud)

什么是xtype?