博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql 如何设置自动ORACLE一样的增长序列 sequence
阅读量:6238 次
发布时间:2019-06-22

本文共 885 字,大约阅读时间需要 2 分钟。

1.创建表

drop table if exists sequence;

create table sequence (
seq_name VARCHAR(50) NOT NULL, -- 序列名称
current_val INT NOT NULL DEFAULT 0, -- 当前值
increment_val INT NOT NULL DEFAULT 1, -- 步长(跨度)
PRIMARY KEY (seq_name) );

2. 插入数据

INSERT INTO sequence VALUES ('seq_test1_num1', '0', '1');
INSERT INTO sequence VALUES ('seq_test1_num2', '0', '2');

3.创建当前值

create function currval(v_seq_name VARCHAR(50))
returns integer
begin
declare value integer;
set value = 0;
select current_val into value from sequence where seq_name = v_seq_name;
return value;
end;

4.测试当前值

 

select currval('seq_test1_num1');

5.创建下一个值

create function nextval (v_seq_name VARCHAR(50))

returns integer
begin
update sequence set current_val = current_val + increment_val where seq_name = v_seq_name;
return currval(v_seq_name);
end;

6.测试下一个值

 

select nextval('seq_test1_num1');

转载于:https://www.cnblogs.com/jtcr/p/8691231.html

你可能感兴趣的文章
linux批量修改文件夹,文件的权限,所属用户,用户组
查看>>
qt5.0.2 + opencv244
查看>>
elasticsearch日期类型
查看>>
产品经理应该如何学习
查看>>
做个精致的程序员
查看>>
挂载U盘参数大全
查看>>
解决macbook键盘失灵问题
查看>>
我总是在市井小人成堆的地方修身养性 对山中云蒸雾缭的神仙往事嗤之以鼻...
查看>>
转载 oracle数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名...
查看>>
Eclipse 配置 Intellij Idea 主题
查看>>
建立软件开发团队时要避免的7个问题
查看>>
将字符序列用其反转形式取代
查看>>
在Eclipse中制作和使用struts2配置文件提示插件
查看>>
操作系统
查看>>
从需求向设计转化的密码
查看>>
360浏览器极速模式pdf文件不能预览问题
查看>>
CAS:PKIX path building failed
查看>>
测试php与mysql的连接是否成功的多种方法
查看>>
15条SQLite3数据库常用语句
查看>>
二叉树中找两个结点的最近的公共祖先结点
查看>>