当我们为现有表添加Identity列时排序如何工作

问题描述 投票:0回答:1

我有一个没有主键的现有表,但是在createdate列上有一个聚集索引。我需要添加一个身份列如果我更改表以添加新列并设置其身份,则排序在SQl服务器中如何发生。我希望根据createdate升序为表的第一行设置ID = 1

sql-server sequence identity auto-increment alter-table
1个回答
1
投票

如果您关心分配顺序,则必须将其插入新表,然后进行切换。

INSERT ... SELECT ... ORDER BY上,将确保按照ORDER BY查询指定的顺序生成标识值。

使用SSMS的表设计器添加列,然后生成更改脚本。它应该为您编写完整的create,load,drop,rename事务的脚本,并且您只需要在加载新表的查询上添加ORDER BY。

© www.soinside.com 2019 - 2024. All rights reserved.