Sql 标识插入失败,出现错误“;。。。不是用户表。无法执行设置操作";
我无意中删除了数据库中的一行,我想重新插入该行。问题在于,主键设置为自动递增,而表的Sql 标识插入失败,出现错误“;。。。不是用户表。无法执行设置操作";,sql,sql-server,Sql,Sql Server,我无意中删除了数据库中的一行,我想重新插入该行。问题在于,主键设置为自动递增,而表的标识插入设置为关闭。我想临时启用标识插入,以便插入已删除的行,然后禁用标识插入 在SQL Server Management Studio中,我尝试了以下操作: SET IDENTITY_INSERT myTable ON INSERT INTO myTable (id, name, value) VALUES (241, 'hello', 'hello2') SET IDENTITY_INSERT myTa
标识插入
设置为关闭
。我想临时启用标识插入,以便插入已删除的行,然后禁用标识插入
在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,第16级,状态1,第2行“myTable”不是用户表。无法执行设置操作 知道原因吗?错误描述: myTable看起来并不是一个真正的表 试试这个:
SELECT * FROM sysobjects WHERE name = ‘myTable’
xtype是什么?表名真的是myTable吗?这也在远程服务器上吗?您在正确的数据库中吗?(不是
master
)是否尝试使用了dbo。MyTable
?MyTable是否可能是另一个表的同义词?SQL Server认为MyTable不是表,而是其他对象类型,如视图。您无法插入视图,需要插入视图中使用的基表。