Advertisement

开发MySQL序列号

阅读量:

背景

由于在执行Oracle迁移至MySQL的任务过程中,MySQL本身并不支持sequence语法,因此必须自行寻找替代方案以实现sequence功能。

方案1

  1. 创建一个名为e_sys_sequence的表格,用于存储序列的名称及其对应的数值
复制代码
    CREATE TABLE `e_sys_sequence` (
    `sequence_name`  varchar(64) NOT NULL COMMENT '序列名称' ,
    `value`  bigint NOT NULL DEFAULT 0 COMMENT '当前值' ,
    PRIMARY KEY (`sequence_name`)
    )ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '通用序列表' ROW_FORMAT = Dynamic;
    
    
      
      
      
      
      
    
  1. 设计一个mysql函数,用于实现对序列的递增处理
复制代码
    DELIMITER 
$$
    CREATE FUNCTION `e_sys_sequence.nextval`(name va

全部评论 (0)

还没有任何评论哟~