当MSSQL中的表中的列的值达到最大值并且解决方案时会发生什么?

时间:2013-09-29 17:03:40

标签: sql-server max

我的表

---------------------
id(int-PK-AI) | name
---------------------
1             | a
2             | b
...           |

max           | x
???           | ...

当MSSQL中的表中列id(主键自动增量)的值大于最大值时会发生什么?错误或发生了什么?什么是防止解决方案?

2 个答案:

答案 0 :(得分:1)

当有人试图执行INSERT,并且生成的ID会溢出列的数据类型时,会出现错误(算术溢出,我相信),INSERT将失败。< / p>

要修复它,请更改列的数据类型以支持更大的范围。 64位整数和长DECIMAL ID确实很难溢出。

答案 1 :(得分:1)

没有插入,抛出错误消息。由数据库设计人员来处理这个问题。备份旧数据或使用bigint作为id列。