gpt4 book ai didi

sql-server-2005 - 什么可能导致 IDENTITY 列损坏?

转载 作者:行者123 更新时间:2023-12-04 15:49:33 25 4
gpt4 key购买 nike

昨天我遇到了一个不寻常的问题,我突然无法将记录插入带有标识列的表中。

像这样的简单插入: INSERT INTO MyTable (Column1, Column2) VALUES ('text', 236764)

开始抛出主键约束违规。

我在表上运行 DBCC CHECKIDENT,并意识到 SQL Server 已停止更新上次使用的值,因此在插入时它使用旧值递增,而新标识值通常已存在于表中,因此会出现违规错误.

解决问题不是问题,我只是为下一个最高序列号重新播种表,但我以前从未见过这种情况发生!

有没有人知道什么可能导致 SQL Server 停止更新标识属性,以及我可以在哪里寻找证据?不涉及复制或任何触发器,它只是一个普通的旧表。

编辑:SQL 日志救援本来是理想的,但它只适用于 SQL Server 2000。是否有类似的工具用于 SQL 2005 日志?

最佳答案

如果有人使用 SET IDENTITY_INSERT ON 插入到表中,某人绝对可能为该表输入了无效值。那将是我的第一个猜测。您可以使用日志分析器,例如 SQL Log Rescue回到过去通过事务日志,看看你是否能找到谁是坏人谁搞砸了你的数据......

关于sql-server-2005 - 什么可能导致 IDENTITY 列损坏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/238913/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com