nextval()

返回序列下一值的函数

nextval() 是一个返回序列下一值的系统函数。

nextval()PostgreSQL 6.1 中被添加。

用法

nextval ( regclass ) → bigint

nextval() 返回的每个值都是原子性返回的,即每次调用都会返回一个不同的值,即使是在不同的会话中执行。

虽然可以直接执行 nextval(),但通常它被用作列的默认值。

可以使用 currval() 函数在不推进序列的情况下检索序列的当前值。可以使用 setval() 来显式设置它。

变更历史

示例

nextval() 的基本用法示例

postgres=# CREATE SEQUENCE foo_seq;
CREATE SEQUENCE

postgres=# SELECT nextval('foo_seq');
 nextval
---------
       1
(1 row)

使用 nextval() 为表中的列生成默认值

postgres=# CREATE TABLE foo (id INT DEFAULT nextval('foo_seq'));
CREATE TABLE

postgres=# INSERT INTO foo (id) VALUES (DEFAULT);
INSERT 0 1

postgres=# SELECT * FROM foo;
 id
----
  2
(1 row)

分类

序列, 系统函数

另请参阅

currval(), setval(), lastval(), CREATE SEQUENCE

反馈

请在此处提交有关“nextval()”的任何评论、建议或更正。 此处