mysql序列号生成软件_mysql 序列号生成器
如果你不想使用mysql的自动递增,但又想实现主键序列号的功能,可以使用下面的方法,通过函数用一张表去维护生成多个表的序列号,简单又实用
1.创建生成多个表的序列号的数据维护表
CREATE TABLE seq (
name varchar(20) NOT NULL,
val int(10) UNSIGNED NOT NULL,
PRIMARY KEY (name)
) ENGINE=MyISAM DEFAULT CHARSET=UTF-8
2.插入几条初始化数据
INSERT INTO seq VALUES('one',100);
INSERT INTO seq VALUES('two',1000);
3.创建函数以生成序列号
CREATE FUNCTION seq(seq_name char (20)) returns int
begin
UPDATE seq SET val=last_insert_id(val+1) WHERE name=seq_name;
RETURN last_insert_id();
end
4.测试
mysql> SELECT seq('one'),seq('two'),seq('one'),seq('one');
+------------+------------+------------+------------+
| seq('one') | seq('two') | seq('one') | seq('one') |
+------------+------------+------------+------------+
| 102 | 1002 | 103 | 104 |
+------------+------------+------------+------------+
1 row IN SET (0.00 sec)
分享到:
2009-10-21 22:58
浏览 2834
论坛回复 / 浏览 (6 / 8069)
分类:数据库
评论
6 楼
pekkle
2009-12-30
说白了,就是用一张表来记录,没意思。并发就死了
5 楼
coolzhi
2009-11-09
nuthell 写道
可否深入详细的讲解一下,如何运用?可以应用在什么地方。
谢谢
本人主要是应用于数据插入时自动生成一个短标识,这样生成静态html或者做伪静态的时候的链接比较容易让搜索引擎或者人记住,没有考虑到并发性能问题
4 楼
方世玉
2009-11-09
每次是update加1,性能很差,大批量的情况下会有问题的
相比之下,oracle是可以提前锁定一批序列号,存放在内存里面的。
3 楼
xiaoych
2009-11-09
性能会比较差吧……
2 楼
hardPass
2009-11-09
这种东西,其实没有什么意义。
可以由应用程序来生成有序的id,方便操作,更方便取刚插入的ID,而不需要考虑并发等问题。
如果用一个服务做这个工作,还方便集群。
1 楼
nuthell
2009-11-09
可否深入详细的讲解一下,如何运用?可以应用在什么地方。
谢谢
mysql序列号生成软件_mysql 序列号生成器相关推荐
- mysql语句在线生成网站_MYSQL语句生成器
看到一位网友用JS做了一个这样一个类似的东西,于是试着用PHP试试看效果. 多提意见,谢谢! MYSQL语句生成器 2005-01-11 初步模型 2005-01-13 修改了可以输入数字及数字为开头 ...
- 根据MAC地址生成软件的序列号
下面是一个简单的生成liense的方法,通过机器的MAC地址,生成一个序列号. #include "stdafx.h" #include <stdio.h> #incl ...
- mysql 存储过程 生成数据_mysql使用存储过程,批量生成测试数据
1.存储过程代码 delimiter $$ DROP PROCEDURE IF EXISTS create_service_data$$ create procedure create_service ...
- mysql 批量生成测试数据_mysql生成批量数据进行数据测试
1.1目的 在MySQL很多测试场景,需要人工生成一些测试数据来测试.本文提供一个构造MySQL大表存储过程,可以生成包含用户名,手机号码,出生日期等字段.也可以通过滤重来使得手机号码不重复,模拟现实 ...
- 给MYSQL账号充值的软件_MYSQL数据库指定数据库表给会员充值充值教程
MYSQL数据库指定数据库表给会员充值充值教程 $db=new cls_mysql(array( 'dbhost'=>'要充值数据库IP', 'dbname'=>'要充值的数据库用户名', ...
- 企业常用mysql集群软件_mysql企业常用集群架构
转自 https://blog.csdn.net/kingice1014/article/details/76020061 1.mysql企业常用集群架构 在中小型互联网的企业中.mysql的集群一般 ...
- mysql binlog生成异常_mysql binlog故障演练
mysql备份恢复 mysqldump备份 企业故障恢复案例: 正在运行的网站系统 mysql数据库 数据量25G,日业务量10-15M 备份策略: 每天晚上23点通过计划任务调用mysqldump执 ...
- mysql 数据库复制软件_mysql 快速复制数据库
MyIsam 发布相对简单,把库下面所有文件拷过去就好了.复制Innodb的做法相对复杂,下面是我在innodb 上复制数据库的方法 [root@localhost data]# mysql -u r ...
- mysql和mongodb软件_MySQL和MongoDB设计实例对比
MySQL是关系型数据库中的明星,MongoDB是文档型数据库中的翘楚.下面通过一个设计实例对比一下二者:假设我们正在维护一个手机产品库,里面除了包含手机的名称,品牌等基本信息,还包含了待机时间,外观 ...
- mysql双机备份软件_MySQL双机备份
安装完mysql之后,有了新的需求,就是需要有一台服务器用来做数据备份使用,以达到容灾的目的,这样需要怎么做呢?还有我们需要进行多点访问来减小单点压力的时候又要怎么办呢?这个时候我们就引入了主从复制和 ...
最新文章
- 2022-2028年中国锂电池设备行业深度调研及投资前景预测报告
- python的虚拟环境
- WORD2007只可以打开一个文档,且打开后文本有时出现不可 编辑情况
- python【数据结构与算法】剪枝策略
- 一款IDEA插件神器,帮你一键转换DTO、VO、BO、PO、DO
- SpringBoot+MyBatis+Shiro 搭建杂谈
- 快速准备电子设计大赛
- 背景图片随着浏览器拖动而变化
- 【进出理论】投入与收益
- [Editor][001][vim]VIM的辅助工具们
- 力扣529.扫雷游戏
- java历史记录怎么写_我想知道像这样的历史记录查询界面,用java swing来做,应该怎么做?...
- iBATIS框架源码剖析
- 华为工程师都没有解决的问题,华为交换机acl不能使用易维版显示
- 雅虎相册批量下载 Beta2 版本 --纪念 5.12 汶川大地震
- 微信小程序的作用,到底能为企业带来什么价值呢?
- [学习经验] 孩子到底什么时候学习自然拼读和国际音标?
- Python学习之路:通过分片的方式修改列表的技巧(拓展知识)
- OpenCV每日函数 几何图像变换模块 (9) resize函数
- php5.3 register_globals,在PHP 5.3中PHP寄存器全局支持?(PHP register globals support in PHP 5.3?)...