当current_value与使用它的表行不同步时,更新SQL Server中序列的current_value

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当current_value与使用它的表行不同步时,更新SQL Server中序列的current_value相关的知识,希望对你有一定的参考价值。

我有一些罕见的实例,其中生成的表的行ID与我的SQL Server 2012数据库中的序列不同步。

所以我尝试执行这个查询:

update sys.sequences 
set current_value = (select max(id) from game.gfxMedia)
where object_id = 1661237544

毫不奇怪我得到了这个错误:

不允许对系统目录进行临时更新。

在我这样的极少数情况下更新序列的current_value的“正确”方法是什么?

谢谢!

答案

你有没有尝试过

ALTER SEQUENCE <seq_name> Restart with <new_number>

以上是关于当current_value与使用它的表行不同步时,更新SQL Server中序列的current_value的主要内容,如果未能解决你的问题,请参考以下文章

不同步时如何重置postgres的主键序列?

不同步时如何重置postgres的主键序列?

Postgres db删除父表行不删除子表行数据?

phpmyadmin:MySQL 的表行数不正确

更新脚本以针对具有递增 ID 的新创建的表行运行

更新已检查的表行