我只是注意到,如果表中有一个标识列,则在我插入新行时,如果存在不连续性,SQL Server 2008会自动填充该序列。我的意思是,如果我的身份列我有1,2,5,6,如果我在表系统会将自动插入其他两行 3 ,7标识列。
你知道如何控制这种行为吗?
谢谢
这是已定义和记录的SQL Server行为,实际上,您无能为力。您想要更改什么?
IDENTITY列将保证唯一且不断增加的ID(只要您不搞乱它们)-他们不保证其他任何事情。
SQL Server 不会 麻烦发现序列中的“缺口”并填满它们。无论如何,我认为这不是一个好主意-如果您确实有ID = 3的记录,然后将其删除怎么办?您是否真的要下一条记录突然“回收”该ID?我认为这不是一个好主意。