Navicat创建pgsql序列自增

每日学习一点点:

在使用pgsql的时候,如果需要对某一列设置默认值,会发现pgsql并不会像mysql那样可以很简单的通过设计表来对该字段进行设置。那么pgsql要怎么设置自增呢?

方法一:

1:创建序列

       Navicat创建pgsql序列自增

Navicat创建pgsql序列自增

 Navicat创建pgsql序列自增

所有者:表的库名

递增、当前值、开始值、最大小值

缓存:指定数据库预先分配序列的值供快速访问,意思就是可以提前提供一些自增至,比如:我现在想在id字段下面设置自增,把缓存设置为20,在我下次新增数据的时候,id会自增到2,但是这个2其实已经生成过了,不会现在生成,节约一部分数据库压力。

循环:是说当自增值超过最大值设定的时候,会重新从最小值开始;如果不设置循环,超过的时候就会报错。

然后保存序列

Navicat创建pgsql序列自增

这样我们得到了序列pg_test1

然后右键表设计

Navicat创建pgsql序列自增

选中需要自增的列,在默认中添加nextval('pg_test1'::regclass)  :pg_test1是我刚才保存的序列名称

Navicat创建pgsql序列自增

这样,序列自增就添加好了

 

方法二:

通过命令执行

Navicat创建pgsql序列自增

然后选择另存为

Navicat创建pgsql序列自增

这就是sql语句添加的方式

CREATE SEQUENCE "public"."Untitled" 
INCREMENT 1
MINVALUE  1
MAXVALUE 99999999999999
START 1
CACHE 1;

SELECT setval('"public"."Untitled"', 1, true);

ALTER SEQUENCE "public"."Untitled" OWNER TO "postgres";