database – 将代理键添加到现有Oracle DB表的首选方法

我必须使用几千条记录修改Oracle 10g数据库中的现有表,以添加代理自动编号密钥.我想到的一种方法是

>创建一个新序列
>创建id列,允许空值
>使用序列更新id列
>更改表以为新id列添加“not null”和“primary key”

有没有更容易或更有效的方法来做到这一点(或者有什么理由说这不起作用)?

我会用以下方式做到:

>创建id列,允许空值
>发出此查询:

UPDATE  mytable
SET     id = rownum

>更改表以为新id列添加NOT NULL和PRIMARY KEY>创建序列,将其播种到MAX(id)1并将其用于进一步插入.

相关文章

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注