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

相关推荐
蒋士峰DBA修行之路32 分钟前
实验十三 WDR诊断报告
数据库
杂亿稿34 分钟前
数据库的约束
数据库
u***324336 分钟前
使用python进行PostgreSQL 数据库连接
数据库·python·postgresql
Codingwiz_Joy39 分钟前
Day44 盲注、报错注入 & 实战复现
数据库·安全性测试
7***99873 小时前
GaussDB数据库中SQL诊断解析之配置SQL限流
数据库·sql·gaussdb
Wang's Blog4 小时前
MongoDB小课堂: 文档操作核心技术指南:主键机制、CRUD操作与最佳实践
数据库·mongodb
g***26794 小时前
最新SQL Server 2022保姆级安装教程【附安装包】
数据库·性能优化
风123456789~5 小时前
【OceanBase专栏】OB背景知识
数据库·笔记·oceanbase
4***72135 小时前
【玩转全栈】----Django模板语法、请求与响应
数据库·python·django
c***42105 小时前
Django视图与URLs路由详解
数据库·django·sqlite