时间:2023-03-16 11:37:49 | 栏目:JAVA代码 | 点击:次
本文主要介绍了MySQL如何设置自动增长序列 SEQUENCE,具体如下:
解决思路:由于mysql不带sequence,所以要手写的,创建一张储存sequence的表(emp_seq),然后手动插入一条数据 ,最后自定义一个函数来处理要增长的值。
说明:
create table emp_seq ( name varchar(50) not null primary key, start_value int not null, increment_value int not null default 1 );
说明:
insert into emp_seq values('empno',1,1);
说明:
DELIMITER // create function nextval(str varchar(50)) returns integer begin declare i int; set i=(select start_value from emp_seq where name=str); update emp_seq set start_value=i+increment_value where name=str; return i; end; //
说明:
DELIMITER ;
5.为了更方便的执行SQL命令,我把这些代码复制到记事本中,并把文件存到D盘根目录下,改名为emp_seq.sql
若没有提示,说明建立成功。如何执行外部SQL脚本命令,客官可移步:MySQL执行外部sql脚本文件的命令
OK,连续执行sql语句获取序列,从上图清楚的看到,结果从1开始,每次自增1
我的数据库里已有empno=6的数据,这里我让start_value增长到7,再插入一条信息:
查看下结果: