001*_*001 12 sql-server sql-server-2005 sql-server-2008
如果你添加一条新记录,然后删除该记录,然后一次又一次地重复添加它,及时,迟早,当你添加一个新的记录整数主键id时,它最终会超过20亿.
现在发生了什么?SQL Server将再次从1启动主键ID?还是-1?
如果它循环40亿次会发生什么; SQL Server如何知道不替换以前的数据?
Mar*_*ith 22
如果identity超出数据类型的范围会导致问题的其余部分无效,则会出现错误.你可以看到这个
CREATE TABLE #T
(
id INT IDENTITY(2147483647,1)
)
INSERT INTO #T
DEFAULT VALUES
INSERT INTO #T
DEFAULT VALUES /*Arithmetic overflow error converting IDENTITY to data type int.*/
GO
SELECT * FROM #T
DROP TABLE #T
Run Code Online (Sandbox Code Playgroud)
小智 8
使用BIGINT,你可能永远不会达到极限.
| 归档时间: |
|
| 查看次数: |
4517 次 |
| 最近记录: |