【Mysql进阶技巧(2)】利用mysql生成唯一序号

栏目: 数据库 · 发布时间: 5年前

内容简介:在数据库分表或者程序自己需要唯一id的情况下,我们需要一个生成唯一id的方案。可以编写一个综合时间和某些特征生成唯一id的程序,也可以考虑使用数据库里自增id的特性来实现这个需求,下面举个mysql的例子。首先创建一个专门生成id的表,其中id字段是主键,replace_key字段为唯一键。

在数据库分表或者程序自己需要唯一id的情况下,我们需要一个生成唯一id的方案。

可以编写一个综合时间和某些特征生成唯一id的程序,也可以考虑使用数据库里自增id的特性来实现这个需求,下面举个 mysql 的例子。

首先创建一个专门生成id的表,其中id字段是主键,replace_key字段为唯一键。

CREATE TABLE `ticket` (
    `id` bigint(20) unsigned NOT NULL auto_increment,
    `replace_key` char(1) NOT NULL default '',
    PRIMARY KEY (`id`),
    UNIQUE KEY `replace_key` (`replace_key`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10001;

每次需要生成id时,利用replace into语句生成新的记录将旧的记录替换掉,然后返回此id即可。

REPLACE INTO `ticket` (`replace_key`) VALUES ('a');
SELECT LAST_INSERT_ID();

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Remote

Remote

Jason Fried、David Heinemeier Hansson / Crown Business / 2013-10-29 / CAD 26.95

The “work from home” phenomenon is thoroughly explored in this illuminating new book from bestselling 37signals founders Fried and Hansson, who point to the surging trend of employees working from hom......一起来看看 《Remote》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试