我从表中删除了一些记录,并希望从备份表中重新插入它们。主键列是标识列,它的值大于删除的值。当我尝试插入其抛出错误时。我不能重新列出这个专栏。如果可能,请在SQL服务器中告诉我。
答案 0 :(得分:2)
在执行此操作之前,请确保没有其他进程插入此表,否则在IDENTITY
禁用时可能会收到错误。或者将transaction with the isolation level中的所有内容设置为SERIALIZABLE
,以防止来自其他进程的任何并发更改。
IDENTITY
。 IDENTITY
列的列值。IDENTITY
。 SQL:
SET IDENTITY_INSERT <your_table> OFF
-- Exceute Inserts
SET IDENTITY_INSERT <your_table> ON
备注强>
您应该执行包含在事务中的插入。这样,如果出现故障,您可以回滚所有内容。您也不应该有任何冲突,因为身份总是递增,因此重新添加已删除的记录不会造成问题。完成后,您可能希望在PK上检查索引碎片。