美文网首页
查询表获取自增值

查询表获取自增值

作者: 一块大西瓜 | 来源:发表于2016-12-05 16:50 被阅读0次

    用于文件的浏览量,某值不重复均可

    drop table if exists `sequence`;

    create table sequence (

    `seq_name`        VARCHAR(50) NOT NULL COMMENT '序列名称',

    `current_val`    INT        NOT NULL COMMENT '当前值',

    `increment_val`  INT        NOT NULL DEFAULT 1 COMMENT '步长',

    PRIMARY KEY (`seq_name`) )ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='序列表';

    delimiter $$

    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$$

    demiliter;

    delimiter $$

    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$$

    查询语句:select nextval('seq_test1_num1');

    相关文章

      网友评论

          本文标题:查询表获取自增值

          本文链接:https://www.haomeiwen.com/subject/qvofuttx.html