详细内容
postgreSQL序列nextval生成唯一数字
发布日期:2021-12-28     点击:1020     字体:[ ]

1.通常用nextval生成一个唯一数字作为表的主键,如果备份数据后,再调用这个nextval可能会生成与表里已经存在的值重复的值,此时可以重设当前值,相关操作见下表

每次调用nextval,序列值就会自增。

序列对象也被称为序列生成器或者就是序列。序列对象都是用CREATE SEQUENCE创建的特殊的单行表。序列对象通常用于为表的行生成唯一的标识符。表 中列出的这些序列函数,可以为我们从序列对象中获取连续的序列值提供了简单的、多用户安全的 方法。

创建序列的语法:

create sequence my_serial start 1;

在获取currval前要执行nextval,不然会报

SQL 错误 [55000]: ERROR: currval of sequence "my_serial" is not yet defined in this session


select nextval('my_serial'); 

select currval('my_serial'); 或者select currval('my_serial'::regclass); 


用户评论
昵称 
内容  *
验证码   
   
Copyright © 2010 zdbase.com All Rights Reserved. 苏ICP备15039389号 可人软件设计