Sql 为新创建的PK填充增量unqiue值

Sql 为新创建的PK填充增量unqiue值,sql,db2,Sql,Db2,我目前有一个有很多行的表,但根本没有PK。我现在要求每一行都有一个唯一的、非空的>0 PK 我已经为PK创建了列,但是如何快速地用从1开始的增量值填充该列呢 对我来说,任何方法、单个SQL行或要执行多次的SQL行都足够了 update sometable set newkeyfield = Row_Number() Over(); 不应该是一个DB2家伙,但应该很接近 尝试使用DB2。它们是为创建独特的数字序列而设计的。选择您的数据类型 CREATE SEQUENCE mySeq as int

我目前有一个有很多行的表,但根本没有PK。我现在要求每一行都有一个唯一的、非空的>0 PK

我已经为PK创建了列,但是如何快速地用从1开始的增量值填充该列呢

对我来说,任何方法、单个SQL行或要执行多次的SQL行都足够了

update sometable set newkeyfield = Row_Number() Over();
不应该是一个DB2家伙,但应该很接近

尝试使用DB2。它们是为创建独特的数字序列而设计的。选择您的数据类型

CREATE SEQUENCE mySeq as int;
使用


表达式可以在插入、更新或合并中使用,也可以在大多数地方使用表达式。

我已经测试了您的解决方案,搜索了错误消息,并修复了sql,使其能够在DB2下工作。谢谢
NEXT VALUE FOR mySeq