PostgreSQL创新表的时候创建递增id主键

本文介绍了如何在PostgreSQL中创建一个包含自增ID主键的表,并进行数据插入。通过创建序列和设定默认值,实现了ID的自动递增功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前一直用的数据库是MySQL,接接手了一个项目用的是PostgreSQL,第一次用这个数据库有点懵13,一个新建表的时候创建递增id主键搞了半天,废话不多说了直接上SQL

CREATE TABLE IF NOT EXISTS public.pre_article
(
    id bigint NOT NULL PRIMARY KEY,
    title character varying(64) COLLATE pg_catalog."default",
    content text COLLATE pg_catalog."default",
    is_deleted smallint DEFAULT 0,
    created_time timestamp(6) without time zone NOT NULL DEFAULT 'now()',
    updated_time timestamp(6) without time zone NOT NULL DEFAULT 'now()'
)
WITH (
    OIDS = FALSE
)
TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.pre_article
    OWNER to ebike;
CREATE SEQUENCE pre_article_id_seq START 1;
ALTER TABLE pre_article
    ALTER COLUMN id SET DEFAULT nextval('pre_article_id_seq'::regclass);
COMMENT ON TABLE public.pre_article
    IS '文章表';
COMMENT ON COLUMN public.pre_article.id
    IS '递增主键';
COMMENT ON COLUMN public.pre_article.title
    IS '标题';
COMMENT ON COLUMN public.pre_article.content
    IS '内容';
COMMENT ON COLUMN public.pre_article.is_deleted
    IS '是否删除';
COMMENT ON COLUMN public.pre_article.created_time
    IS '创建时间';
COMMENT ON COLUMN public.pre_article.updated_time
    IS '更新时间';

执行insert添加数据不设置id,会自动递增

INSERT INTO public.pre_article
(title, "content")
VALUES('我的博客', '我的博客内容');
INSERT INTO public.pre_article
(title, "content") VALUES('我的博客2', '我的博客内容2');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值