具有自动递增值的MS SQL更新列

noa*_*dev 3 sql sql-server sql-server-2012

我最近将一些旧数据导入到新的SQL表中,忘了将ID列设置为自动增量.

现在我在名为ID的列中有几个"NULL".

有没有办法可以自动更新具有唯一ID的所有ID列?可悲的是,我不知道如何

之后,我将能够将列设置为INT和自动增量.

谢谢您的帮助.

Dha*_*val 6

尝试使用Sql Server 2012的序列对象

create Sequence Sq as int
minvalue 1
cycle;

update table set Column=NEXT VALUE FOR Sq where Column is null
Run Code Online (Sandbox Code Playgroud)


Sau*_*nri 5

最简单的方法是删除旧的 ID 列并使用以下命令添加新的列 ID:

  ALTER TABLE [dbo].[myTable] DROP COLUMN ID 
  ALTER TABLE [dbo].[myTable] ADD ID int IDENTITY
Run Code Online (Sandbox Code Playgroud)