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 关键字(默认设置)阻止在其他对象依赖该序列时删除序列。

相关推荐
薿夜9 分钟前
SpringSecurity(二)
数据库
Francek Chen30 分钟前
【大数据存储与管理】NoSQL数据库:01 NoSQL简介
大数据·数据库·分布式·nosql
Database_Cool_1 小时前
【无标题】
数据库·阿里云·ai
isNotNullX1 小时前
BI如何落地?BI平台如何搭建?
大数据·数据库·人工智能
Shely20171 小时前
单表查询
数据库
5G丶1 小时前
ThinkPHP 集群部署完整指南
数据库·php
刘~浪地球2 小时前
数据库与缓存--MySQL 高可用架构设计
数据库·mysql·缓存
知识分享小能手2 小时前
MongoDB入门学习教程,从入门到精通,MongoDB的了解应用程序的动态(18)
数据库·学习·mongodb
oradh2 小时前
Oracle数据类型概述(一)
数据库·oracle·oracle基础·oracle入门基础·oracle数据类型