admin

如何在SQL Server的列中添加身份?

sql

我有一张约一千万行的表。我们只是使用SQL Server Management Studio从另一个数据库导入了它。它创建表,但主键列上没有标识和主键。

我可以添加主键,但不能添加身份。当我在Designer中进行操作时,总是会超时。甚至我将超时设置都设置为0。

我可能需要创建另一列设置主键和标识,从旧列复制数据,删除旧列并重命名新列。

谁能告诉我,在没有额外过热的情况下,在如此大的桌子上做这件事的最佳方法是什么?


阅读 302

收藏
2021-05-10

共1个答案

admin

好的。我能够为具有1000万条记录的现有主列添加身份。花了我大约30分钟。

步骤:

  1. 将数据库更改为单用户模式(以确保没有其他连接到数据库,可以引起锁定)

  2. 在设计器模式下打开表

  3. 做出改变。不要保存

  4. 单击生成更改脚本按钮(通常在对象资源管理器的右上方)

  5. 复制生成的脚本

  6. 关闭设计器窗口(您一次只能运行一个实例)
  7. 开启新视窗
  8. 执行脚本

  9. 完毕。现在您的列具有标识:)

2021-05-10