想象一下,我们有一张桌子:
create table MYTABLE ( id int IDENTITY(1,1),name varchar(10) )
我们必须在表中插入很多行.
有人知道当生成的标识值超过最大整数值(2 ^ 32-1)时会发生什么?
解决方法
>您将收到以下错误:
Msg 8115,Level 16,State 1,Line 1
将IDENTITY转换为数据类型int的算术溢出错误.
发生算术溢出.
>在您执行以下操作之前,您将无法插入更多记录:
>删除一些并使用the DBCC CHECKIDENT
command重置标识列,
要么
>将列的数据类型更改为bigint(由Gabriel Guimarães建议).