我不小心删除了数据库中的一行,我想重新插入该行。问题是主键设置为自动增量,表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
第一行失败了:
Msg 8105,Level 16,State 1,Line 2
'myTable'不是用户表。无法执行SET操作。
知道为什么吗?
答案 0 :(得分:5)
错误说明: http://www.sql-server-performance.com/2007/not-a-user-table-cannot-perform-set-operation/
myTable似乎并不是一张桌子。
试试这个:
SELECT * FROM sysobjects WHERE name = ‘myTable’
什么是xtype?