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

相关推荐
陈陈CHENCHEN25 分钟前
【数据库】MySQL 8.0.40 至 8.0.44 RPM 方式升级指南
数据库·mysql
Azhao11061 小时前
一文读懂分享网站模块介绍(附实操教程)
mysql
m0_734949791 小时前
怎么利用Navicat进行调整备份文件压缩等级_详细配置与操作步骤
jvm·数据库·python
T.i.s1 小时前
番外续2-MIT-BIH Arrhythmia Database
数据库
有味道的男人2 小时前
AI 效率翻倍:对接 1688 拍立淘接口,商品全量信息一键抓取
数据库
m0_741173332 小时前
如何处理SQL中的NULL值_使用ISNULL或COALESCE函数
jvm·数据库·python
志栋智能2 小时前
超自动化巡检:解锁运维数据的深层价值
运维·服务器·数据库·自动化
m0_380113842 小时前
补单系统搭建及源码分享
数据库·spring boot·mybatis
步辞2 小时前
css伪类选择器-nth-child应用技巧_循环选择列表或表格行的实现方法
jvm·数据库·python
阿丰资源3 小时前
基于SpringBoot+MySQL的社区团购系统设计与实现(附源码+文档+数据库,直接运行)
数据库·spring boot·mysql