我已将记录插入到SQL Server数据库表中。该表已定义了主键,并且自动增量标识种子设置为“渊”。这样做主要是因为在SQL Azure中,每个表都必须定义一个主键和标识。
但是由于我必须从表中删除一些记录,所以这些表的标识种子将受到干扰,索引列(索引列(以1为增量自动生成)也将受到干扰)。
删除记录后如何重置标识列,以便该列按升序排列?
标识列不用作数据库中任何地方的外键。
该DBCC CHECKIDENT管理命令用来复位身份计数器。命令语法为:
DBCC CHECKIDENT
DBCC CHECKIDENT (table_name [, { NORESEED | { RESEED [, new_reseed_value ]}}]) [ WITH NO_INFOMSGS ]
例子:
DBCC CHECKIDENT ('[TestTable]', RESEED, 0); GO
早期版本的Azure SQL数据库不支持此功能,但现在支持。