SQL Server中的Identity INT列已达到最大限制



我使用的是SQL Server 2012,并且生产中的一个表的列INTidentity(1,1)primary key clustered已达到其最大限制。有人能帮我解决这个问题吗?

尝试更改表列

ALTER TABLE OneTable ALTER COLUMN ID bigint

在主键或FK依赖的情况下,它将失败,并出现以下错误:

Msg 5074,Level 16,State 1,Line 1对象"PK_OneTable"为依赖于列"ID"。Msg 4922,级别16,状态9,第1行ALTERTABLE ALTER COLUMN ID失败,因为一个或多个对象访问柱

解决方案1

  1. 在表中创建一个新的bigint列
  2. 使用int列中的值更新该新列
  3. 删除int列
  4. 重命名bigint列

最新更新