pgsql已有表设置主键自增

1.创建序列:

CREATE SEQUENCE tablename_id_seq

START WITH 1

INCREMENT BY 1

NO MINVALUE

NO MAXVALUE

CACHE 1;

2.创建或修改表,添加自增主键约束(已有主键则无需此步骤)

ALTER TABLE your_table

ADD PRIMARY KEY (column_name);

3.设置列的默认值为序列的下一个值

ALTER TABLE your_table

ALTER COLUMN column_name SET DEFAULT nextval('tablename_id_seq');

4.删除自增序列

DROP SEQUENCE IF EXISTS sequence_name CASCADE \| RESTRICT ;

  • equence_name 是你想要删除的序列的名称。

  • IF EXISTS 是一个可选参数,如果指定了该参数,在序列不存在时不会触发错误。

  • CASCADE 关键字会自动删除依赖于该序列的对象。

  • RESTRICT 关键字(默认设置)阻止在其他对象依赖该序列时删除序列。

相关推荐
油丶酸萝卜别吃36 分钟前
Redis 布隆过滤器快速实现
数据库·redis·缓存
深念Y37 分钟前
stable-diffusion.cpp 的 FLUX.2 Klein 9B 分步
java·前端·数据库
whn197740 分钟前
oracle 的ora-19633处理
数据库·oracle
x-cmd1 小时前
用 Rust 打造 AI 时代的 SQL:把重复任务变成可执行文件
数据库·人工智能·sql·ai·容器·rust·workflow
小弥儿1 小时前
Firecrawl:把整个网页变成 AI 可查询的数据库
数据库·人工智能·学习
swordbob1 小时前
mysql数据库,明明有索引为啥不用
数据库·mysql
晴天¥2 小时前
Oracle ASM、ACFS、FLEX ASM三者之间的关系?
数据库·oracle
Leon-Ning Liu2 小时前
Oracle GoldenGate Replicat Abend:Key Column Missing 根因分析与修复
数据库·oracle
IvorySQL11 小时前
PostgreSQL 日报 | JOIN 与外键优化(8 月 9 日)
数据库·postgresql
ltl12 小时前
自治数据库十年回顾:Peloton、NoisePage、OtterTune 到云原生 auto-tuning
数据库