postgresql 序列Sequence

本文介绍了如何在PostgreSQL中创建序列,包括示例和语法解析。同时,针对自增ID重复问题,提出了通过更新序列值至表中最大键值的解决方案。
摘要由CSDN通过智能技术生成

一、创建序列

示例

-- SEQUENCE: test_id_seq

-- DROP SEQUENCE test_id_seq;

CREATE SEQUENCE test_id_seq
    INCREMENT 1
    START 1
    MINVALUE 1
    MAXVALUE 9223372036854775807
    CACHE 1;

语法

CREATE SEQUENCE [ IF NOT EXISTS ] sequence_name  
    [ AS { SMALLINT | INT | BIGINT } ]  
    [ INCREMENT [ BY ] increment ]  
    [ MINVALUE minvalue | NO MINVALUE ]   
    [ MAXVALUE maxvalue | NO MAXVALUE ]  
    [ START [ WITH ] start ]   
    [ CACHE cache ]   
    [ [ NO ] CYCLE ]  
    [ OWNED BY { table_name.column_name | NONE } ]

说明

在上面的语法中,我们使用了以下参数:

范围 描述
sequence_name sequence_name 不同于类似模式中的任何其他序列、索引、表、视图或外部表。我们可以在CREATE SEQUENCE之后定义序列名称并且IF NOT EXISTS 条件仅在它不存在时才临时生成一个新序列。
[ AS { SMALLINT \ INT \<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值