如果你不想使用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)
分享到:
相关推荐
一个简单的JAVA版的DAO生成器,通过反射机制获取bean实体类属性,前提是bean属性都有自动生成的getters和setters。 之前由于一个bean实体类就要写一个DAO,实在是没有效率,就想了这个方法,反射机制获取私有属性的...
然而,关于压缩包中提到的序列号生成器,需要注意的是,使用非官方的序列号生成器可能涉及版权问题,违反软件许可协议,甚至可能导致计算机安全风险,如病毒或恶意软件。官方版本通常会提供试用期,若需要长期使用,...
该 ID 生成器采用了时间戳结合序列号的方式来确保 ID 的唯一性。具体来说: - **时间戳**:使用当前时间作为 ID 的一部分,可以确保随着时间的变化,ID 不同。 - **序列号**:在同一毫秒内,使用一个递增的序列号来...
用户可以通过其内置的SQL编辑器编写和执行复杂的SQL语句,进行数据查询、更新和管理。 4. **数据同步**:Navicat提供了数据库同步功能,可以帮助用户比较并同步数据库之间的差异,确保数据的一致性。 5. **数据...
MySQL序数生成器是开发过程中常见的一种工具,特别是在Node.js环境中。这个名为"mysql-sequence"的库专门设计用于在MySQL数据库中创建和管理序列,它可以帮助开发者避免使用自增ID或其他复杂方法来生成唯一的序列号...
7. **序列号生成器**:标题中提到的“序列号生成器”可能是指Navicat7内置的功能,用于自动生成数据库中的唯一标识,这在创建主键或唯一索引时非常有用。 8. **数据传输**:在不同数据库间进行数据和结构的迁移,...
2. **MySQL作为序列号生成器**: MySQL的自增主键在单机环境下能很好地生成序列号,但在分布式系统中,多台服务器无法共享同一个自增ID。此项目可能利用了MySQL的分布式锁或分布式事务(如两阶段提交)来实现跨...
3. **数据源支持**:CodeSmith可以连接到各种数据库,如SQL Server、Oracle、MySQL等,直接从中提取表结构和数据,生成相应的数据访问层代码。 4. **集成开发环境(IDE)插件**:CodeSmith 6.0可与Visual Studio...
《深入理解百度开源的分布式ID生成器UidGenerator》 在分布式系统中,生成全局唯一ID是一个常见的需求,而百度开源的UidGenerator就是这样一款强大的工具。它基于Snowflake模型,为系统提供了高性能且具有唯一性的...
imiskolee-seqno作为一个开源的分布式自增序列生成器,结合了MySQL的稳定性和分布式系统的灵活性,为开发人员提供了一种简单而高效的方法来解决序列号生成的问题。通过理解其工作原理和使用方式,我们可以更好地将其...
8. 键生成器(keygen.exe):这个文件可能是用于生成MySQLFront的序列号或激活码的程序。然而,需要注意的是,非法使用此类工具可能违反软件许可协议,并可能导致法律问题。 总结起来,MySQLFront是MySQL数据库管理...
6. 图形化SQL构建器:为非专业SQL编写者提供了友好的界面,自动生成SQL语句。 7. 触发器与存储过程管理:可视化编辑和测试触发器与存储过程,简化数据库对象的维护。 总的来说,SQLyog 8.14绿色免安装版是MySQL...
9. **产品序列号**:提到标题中的产品序列号,这表明Navicat提供的是合法授权版本,用户可以享受完整的功能和服务,无需担心软件的合法性问题。 综上所述,Navicat全数据库汉化版是一个强大的数据库管理解决方案,...
5. **报告生成**:自动生成数据库结构报告和性能报告,便于理解和分享数据库状态。 在压缩包中,"x32"和"x64"分别代表适用于32位和64位操作系统的安装程序,这确保了无论用户使用哪种架构的计算机,都能顺利安装和...
因此,引入专门的分布式ID生成器解决方案成为必要。 ### UUID方案 UUID(Universally Unique Identifier)是一种常见的生成全局唯一ID的方法,但它存在一些问题: 1. **存储不便**:UUID由16字节的128位组成,通常...
在描述中提到的"带keygen",keygen通常是指密钥生成器,用于生成软件激活码或序列号。在合法购买和使用软件的情况下,keygen是非法的,并且违反了软件版权。对于MySQL-Front这样的商业软件,合法使用应通过官方渠道...
1. **SciLexer.dll**:这可能是Scintilla组件的一个部分,Scintilla是一个源代码编辑器组件,通常用于提供语法高亮和代码编辑功能。 2. **Key.txt**:这很可能是包含注册码的文件,用户可以通过输入其中的代码来激活...
7.3.1 生成历史同盟目录 218 7.3.2 发送成员资格更新通知 223 7.3.3 历史同盟成员项目编辑 227 7.3.4 寻找共同兴趣的历史同盟成员 231 7.3.5 联机历史同盟目录 232 7.4 在 Web 应用程序中使用 DBI 234 7.4.1 ...
"SN.txt"文件可能是包含软件序列号的文本文件,用户在安装过程中可能需要输入这个序列号以激活完整版本的MySQL-Front。这强调了软件的合法性和授权的重要性,使用未经授权的软件可能会导致法律问题,并可能不享受...