mysql如何实现自增序列


本文摘自PHP中文网,作者醉折花枝作酒筹,侵删。

本篇文章给大家介绍一下mysql实现自增序列的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

1.创建sequence表

1

2

3

4

5

6

CREATE TABLE `sequence` (

  `name` varchar(50) COLLATE utf8_bin NOT NULL COMMENT '序列的名字',

  `current_value` int(11) NOT NULL COMMENT '序列的当前值',

  `increment` int(11) NOT NULL DEFAULT '1' COMMENT '序列的自增值',

  PRIMARY KEY (`name`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

2.创建?C取当前值的函数

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

DROP FUNCTION IF EXISTS currval;

DELIMITER $

CREATE FUNCTION currval (seq_name VARCHAR(50))

     RETURNS INTEGER

     LANGUAGE SQL

     DETERMINISTIC

     CONTAINS SQL

     SQL SECURITY DEFINER

     COMMENT ''

BEGIN

     DECLARE value INTEGER;

     SET value = 0;

     SELECT current_value INTO value

          FROM sequence

          WHERE name = seq_name;

     RETURN value;

END

$

DELIMITER ;

阅读剩余部分

相关阅读 >>

关于 mysql 权限控制语句的总结

mysql查询结果实现多列拼接查询

mysql 转义字符是什么

mysql命令行导入数据报错怎么办

mysql数据库进行优化总结

mysql 5.7.20绿色版安装详细图文教程

mysql怎样查看帮助

mysql和oracle的区别有什么

mysql的innodb引擎入门学习教程

cmd 怎么查看mysql

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...