zoukankan      html  css  js  c++  java
  • mysql 模拟一个自增序列

    文章出处:https://sdu0rj.axshare.com/%E4%BA%8C%E7%BA%A7%E5%AE%A2%E6%88%B7%E7%AE%A1%E7%90%86.html

    mysql没有像oracle一样的sequence自增序列,需要我们自己维护一个。

    CREATE TABLE sys_sequence (
      NAME varchar(50) NOT NULL,
      CURRENT_VALUE int(11) NOT NULL DEFAULT '0',
      INCREMENT int(11) NOT NULL DEFAULT '1',
      PRIMARY KEY (NAME)
    );
    
    INSERT INTO SYS_SEQUENCE(NAME,CURRENT_VALUE,INCREMENT) VALUES('diablo_seq', 1,1);
    
    
    DROP FUNCTION IF EXISTS fun_currval;
    DELIMITER $$
    CREATE  FUNCTION fun_currval(seq_name VARCHAR(50)) RETURNS INT(11)
      BEGIN
        DECLARE VALUE INTEGER;
        SET VALUE=0;
        SELECT current_value INTO VALUE
        FROM sys_sequence
        WHERE NAME=seq_name;
        RETURN VALUE;
      END$$
    DELIMITER ;
    
    
    DROP FUNCTION IF EXISTS fun_nextval;
    DELIMITER $$
    CREATE  FUNCTION fun_nextval(seq_name varchar(50)) RETURNS int(11)
      BEGIN
        UPDATE sys_sequence
        SET CURRENT_VALUE = CURRENT_VALUE + INCREMENT
        where name=seq_name;
        return fun_currval(seq_name);
      END$$
    DELIMITER ;
  • 相关阅读:
    Android文件操作说明

    d
    关于<验证码>的实现和执行流程 http://www.cnblogs.com/androidhtml5/archive/2012/05/19/2533650.html
    div 嵌套 图片
    在线FLV播放器实现方法
    转载 android webview js
    d
    d
    消息
  • 原文地址:https://www.cnblogs.com/liuboyuan/p/9375828.html
Copyright © 2011-2022 走看看