每日学习一点点:
在使用pgsql的时候,如果需要对某一列设置默认值,会发现pgsql并不会像mysql那样可以很简单的通过设计表来对该字段进行设置。那么pgsql要怎么设置自增呢?
方法一:
1:创建序列
所有者:表的库名
递增、当前值、开始值、最大小值
缓存:指定数据库预先分配序列的值供快速访问,意思就是可以提前提供一些自增至,比如:我现在想在id字段下面设置自增,把缓存设置为20,在我下次新增数据的时候,id会自增到2,但是这个2其实已经生成过了,不会现在生成,节约一部分数据库压力。
循环:是说当自增值超过最大值设定的时候,会重新从最小值开始;如果不设置循环,超过的时候就会报错。
然后保存序列
这样我们得到了序列pg_test1
然后右键表设计
选中需要自增的列,在默认中添加nextval('pg_test1'::regclass) :pg_test1是我刚才保存的序列名称
这样,序列自增就添加好了
方法二:
通过命令执行
然后选择另存为
这就是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";