标签:实现 val lte table exist pre postgre alter nextval
在 mysql 中,实现 id 自增的方式是依靠加一个 auto_increment 标志,而在 pgsql 中,id 自增是通过序列 SEQUENCE。
创建表时设置自增序列为:
CREATE TABLE "config" ( "id" int4 NOT NULL DEFAULT nextval(‘config_id_seq‘::regclass), ... };
修改创建表之后的序列,如:
----删除前先解除 id 对该序列的依赖 ALTER TABLE tablename ALTER COLUMN id SET DEFAULT null; DROP SEQUENCE IF EXISTS sequence_name; ---- id_max 即 id 目前的最大值,可写为1,可通过 “SELECT MAX(id) FROM tablename” 得到 CREATE SEQUENCE sequence_name START WITH id_max; ALTER TABLE tablename ALTER COLUMN id SET DEFAULT nextval(‘sequence_name‘::regclass); ————————————————
原文链接:https://blog.csdn.net/quanqxj/article/details/77505247
标签:实现 val lte table exist pre postgre alter nextval
原文地址:https://www.cnblogs.com/gaoyang666/p/12106125.html