创建序列从1开始
CREATE SEQUENCE SequenceName START 1;
将序列放入对应的主键中
nextval(‘SequenceName’::regclass)
删除序列
drop sequence SequenceName;
修改序列的当前执行值从1开始
SELECT setval(‘SequenceName’, 1) ;
如果这是一个psql脚本,需要给plpgsql一个IF语句来执行,所以它需要放入一个DO $$ if语句$$
构造。
eg: 判断一个序列是否存在,如果存在就删除重新创建并且从1开始自增,否则就直接创建。
DO LANGUAGE plpgsql $$
BEGIN
IF EXISTS (SELECT 0 FROM pg_class where relname = 'SequenceName')
THEN
drop sequence SequenceName;
CREATE SEQUENCE SequenceNameSTART 1;
ELSE
CREATE SEQUENCE SequenceNameSTART 1;
END IF;
END;
$$;