Oracle 、 Mysql、Guass 的 sequence

一、Oracle 本身存在 sequence 实体,可以直接创建,如:

CREATE sequence xxx_SEQ

minvalue 1

maxvalue 999999

start with 1

increment by 1

cache 20

cycle;

执行语句得到序列的下一个值:

SELECT xxx_SEQ.NEXTVAL FROM DUAL

二、MYSQL ,不存在 sequence 。 需要仿照,

1、建立一个自增表

CREATE TABLE xxx_SEQ_table (
id INT(11) NOT NULL AUTO_INCREMENT,

PRIMARY KEY (id)

) ;

2、建立一个函数

CREATE FUNCTION xxx_SEQ_nextval() RETURNS INT

BEGIN

INSERT INTO xxx_SEQ_table (id) VALUES (NULL);

RETURN LAST_INSERT_ID();

END;

3、执行语句得到序列的下一个值:

SELECT xxx_SEQ_nextval()

三、Guass,创建 sequence 与 Oracle 一样

CREATE sequence xxx_SEQ

minvalue 1

maxvalue 999999

start with 1

increment by 1

cache 20

cycle;

执行语句得到序列的下一个值:

SELECT xxx_SEQ.NEXTVAL

相关推荐
王中阳Go7 小时前
5.27 分钟干完后端和全部测试:一场三小时笔试的五个失分点,四个不在代码上
大数据·数据库·人工智能·后端·大语言模型
cnskylee8 小时前
【MySQL】麒麟V10 SP3系统安装MySQL-Commercial-8.0.46
数据库·mysql·adb
梦幻通灵8 小时前
修改MySQL数据库递增序列【持续更新】
数据库·mysql
liminla!8 小时前
SQL 从入门到进阶:语法速查与实战练习(完整优化版)
数据库·sql·算法
tongyiixiaohuang8 小时前
供应商主数据同步实战:从易快报到金蝶云星空的单一策略落地
java·网络·数据库
大侠归来9 小时前
常用 MySQL 分库分表方案详解
数据库·mysql
kingx39 小时前
Windows Server 2008 应急加固实战:7 项入侵痕迹排查与修复
数据库·windows·提权·应急响应·加固
xiaogai_gai10 小时前
采购业务退款单同步实战:从钉钉审批流到金蝶云星空付款单
java·数据库·钉钉
AlickLbc10 小时前
DM-V8数据库证书过期处理过程记录
数据库
l1t10 小时前
DeepSeek总结的五分钟测试:Ted Dunning 谈 DuckDB 为何让分析更轻松
数据库·sql·duckdb