PostgreSQL currval() 函数使用指南
PostgreSQL currval() 函数返回当前会话中指定序列的当前值。如果当前会话没有调用过 nextval() 函数,将会发生一个错误。
currval() 语法
这里是 PostgreSQL currval() 函数的语法:
currval(sequence_name TEXT) -> BIGINT
参数
sequence_name- 必需的。 序列的名称。
返回值
PostgreSQL currval() 函数返回当前会话中指定序列的当前值。
如果在当前会话中没有调用过 nextval() 函数,那将会发生一个错误。
currval() 示例
首先,让我们使用 CREATE SEQUENCE 语句创建一个简单的序列生成器 my_sequence:
DROP SEQUENCE IF EXISTS my_sequence;
CREATE SEQUENCE my_sequence START 100;
这里,我们创建了一个名称为 my_sequence 序列生成器,它的起始值是 100。
然后,让我们使用 PostgreSQL nextval() 函数将序列 my_sequence 前进一位并返回最新的值:
SELECT nextval('my_sequence');
nextval
---------
100让我们使用 currval() 函数返回序列 my_sequence 的当前值:
SELECT currval('my_sequence');
currval
---------
100这里,currval() 函数的返回值和最近一次 nextval() 函数的返回值是一样的。