【发布时间】:2013-09-19 07:47:50
【问题描述】:
我正在使用 SQL Server Management Studio,我想使用不同的值更改表行的自动递增主键值。 SQL Server Management Studio 在打开表格进行编辑后,当然会将此字段的所有行显示为灰色。
有可能吗?我想使用我们错误删除的行数,因此它是有效的(与其他主键值没有冲突)并且 - 最重要的是 - 添加到数据库中的下一行应该具有完整的自动递增值。
谢谢。
编辑:丢失与此 PK 上其他表记录的链接对于这一行来说不是问题。我们可以手动恢复。
【问题讨论】:
-
不要使用主键作为无间隙排名数字或类似的东西。
-
@juergend 你不能强调这一点。我建议这应该是答案!
-
我需要为业务数据库快速恢复这种情况。如果您推荐不同的设计方法,我很感激,但这并不能解决我的问题。
-
选择临时表中的记录-更新临时表以修复顺序-删除并创建原始表-在新表中插入临时表中的记录
-
您不能更新
IDENTITY列的值 - 如果确实必须,您只能在INSERT上显式设置它。
标签: sql sql-server ssms