MYSQL 自定义序列函数

代码如下:

DROP TABLE SEQNUM;
-- 创建序列表
CREATE TABLE SEQNUM(
ID BIGINT
);

-- 插入初识值
insert INTO SEQNUM values(0);

-- 查看序列表数据
SELECT * FROM SEQNUM;

-- 创建序列函数
DELIMITER //
CREATE FUNCTION FUNC_SEQ() RETURNS BIGINT 
BEGIN
  DECLARE a BIGINT;
  SELECT MAX(ID) FROM SEQNUM INTO a;
  SET a = a + 1;
  INSERT INTO SEQNUM VALUES(a);
  RETURN a;
END//
DELIMITER;

DROP TABLE TMP1;
-- 创建示例演示表
CREATE TABLE TMP1(
ID BIGINT,
NAME VARCHAR(20)
);

-- 使用序列函数插入数据
insert INTO TMP1 values(FUNC_SEQ(),'lzh');

-- 查看示例表数据
SELECT * FROM TMP1

 执行结果:

 

 

posted on 2019-11-21 14:46  Simple-Sir  阅读(877)  评论(0编辑  收藏  举报

导航