我正在设计SQL Server 2008 R2 SP2 Express数据库中的表。我创建的表具有nvarchar
用于数据的tinyint
列和用于自动递增标识的列,并假设行数不多(这就是为什么我选择0-255 tinyint
)。当我添加超过255行时,即使删除该表中的所有行并尝试添加一个新行,该错误仍然会永久发生。我正在使用SQL Server Management Studio Express进行此操作。
tinyint
对int
的和达到极限int
是多少?一旦添加了255行,就想从表中删除所有行,但是即使删除所有行之后,增量列的计数器也已设置为255。
为了解决这个问题,您需要在删除所有行后重置增量列的计数器。删除所有行时,请使用以下查询,以便计数器将重置为重置为0。执行此查询后,您可以在表中添加行,且增量列值为1或在表设计时设置的值。
DELETE FROM [TestTable]
DBCC CHECKIDENT ('[TestTable]', RESEED, 0)
GO
如果要删除表中的所有行,也可以使用truncate table命令。Truncate Command还将增量列重置为初始值。
Truncate Table [TestTable]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句