Pet*_*ton 12 sql postgresql sequences
在SQL中,如何更新表,将列设置为每行的不同值?
我想更新PostgreSQL数据库中的某些行,将一列设置为序列中的数字,其中该列具有唯一约束.我希望我可以使用:
update person set unique_number = (select nextval('number_sequence') );
Run Code Online (Sandbox Code Playgroud)
但似乎nextval只被调用一次,所以更新对每一行使用相同的数字,并且我得到'重复键违反唯一约束'错误.我该怎么做呢?
Gre*_*her 29
不要使用subselect,而是直接使用nextval函数,如下所示:
update person set unique_number = nextval('number_sequence');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9967 次 |
| 最近记录: |