我使用的是SQL Server 2012,并且生产中的一个表的列INT
、identity(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
- 在表中创建一个新的bigint列
- 使用int列中的值更新该新列
- 删除int列
- 重命名bigint列