前言:
今天在机房重构的时候,在完成操作员给顾客退卡时,发生了错误不能向结账表中插入数据。
当 IDENTITY_INSERT 设置为 OFF 时,不能向表'CheckOut'中的标识列插入显式值
原因:
1.在执行Insert语句时出现
2.任何时候,会话中只有一个表的 IDENTITY_INSERT 属性可以设置为 ON。如果某个表已将此属性设置为 ON,并且为另一个表发出了 SET IDENTITY_INSERT ON 语句,则 Microsoft® SQL Server™ 返回一个错误信息,指出 SET IDENTITY_INSERT 已设置为 ON 并报告此属性已设置为 ON 的表。
解决方法:
参考博客:https://www.cnblogs.com/wzzyuxi/p/11174958.html
1.我使用的是第一种方法:允许将显式值插入表的标识列中
在我们原来的数据库操作语句之前加上一句话:
set identity_insert CheckOut(表名) ON
使之成为