SQLSERVER:如何将现有的表int主键更改为标识列?

nev*_*ves 6 database sql-server identity sql-server-2000 primary-key

我的数据库有一个包含数千条记录的表.主键是整数.这个专栏有很多外键约束.

我想将此列更改为身份密钥.最好的方法是什么?我还需要将此更新发送到我们的客户端安装.

在Sql Server 2000中有效的答案的奖励积分.

nev*_*ves 15

SQL Server Management Studio中有一个很棒的功能可以节省我的一天.

在SSMS中,转到选项 - >设计器 - >表和数据库设计器,选中"自动生成更改脚本"并取消选中"禁止保存需要重新创建表的更改".

在对象资源管理器中,转到您的表并选择将获得标识规范的列.右键单击并选择修改.在Column properties面板中,展开树"Identity Specification"并将"(Is Identity)"更改为yes.现在在左上角的大小,选择图标"生成脚本".注意警告信息.

现在,您将拥有一个生成的脚本,该脚本将删除所有约束,使用标识重新创建表,并重新创建约束.哇!

我会测试它并在这里发布我的结果.

更新:一切正常.我忘记在问题中说我需要脚本来重现客户端安装中的修改.

这个网站真是太棒了.我花了很多时间来写自己的答案,我得到了另外3个人!