Postgresql数据库之创建和修改序列的操作

时间:2022-06-02 00:21:17

创建序列

(从1开始,递增幅度1,最大值无上限):

?
1
create sequence fl_user_seq increment by 1 minvalue 1 no maxvalue start with 1;

更改序列值

(方法中两个参数分别是1.序列名字,2.序列修改后值):

?
1
select setval('fl_user_seq ', 88);

Navicat Premium中序列位置如下图:

Postgresql数据库之创建和修改序列的操作

Postgresql数据库之创建和修改序列的操作

补充:PostgreSQL 序列增删改

创建序列

?
1
2
3
4
5
6
7
8
CREATE SEQUENCE if not exists test_mergetable_id_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 999999999
START 1
CACHE 1;
//或者:
create sequence if not exists test_mergetable_id_seq increment by 1 minvalue 1 no maxvalue start with 1;

指定序列(给表的主键指定创建好的序列)

?
1
alter table test_mergetable alter column "i_id" set default nextval('test_mergetable_id_seq');

设置序列自增长从当前最大值开始

?
1
2
SELECT setval('test_mergetable_id_seq', (SELECT MAX(i_id) FROM test_mergetable));
alter sequence test_mergetable_id_seq start with 12;

删除序列

?
1
drop sequence IF EXISTS test_mergetable_id_seq

查看序列

?
1
SELECT nextval('test_mergetable_id_seq')

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。

原文链接:https://blog.csdn.net/qq_42385775/article/details/97934241