欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

创建guid

程序员文章站 2022-04-18 22:46:35
...

无详细内容 无 ----用于保存主键CREATE TABLE `c_guid` ( `Id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL DEFAULT '', `guid` int(11) NOT NULL DEFAULT '1', `desc` varchar(255) DEFAULT NULL, PRIMARY KEY (`Id`), UNIQUE KEY `name`

----用于保存主键
CREATE TABLE `c_guid` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL DEFAULT '',
  `guid` int(11) NOT NULL DEFAULT '1',
  `desc` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`Id`),
  UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;


----如果存在此key,则返回下一个id(既id+1)。否则,创建一条新记录,写入新id为1并返回此id.
CREATE PROCEDURE `nextGUID`(IN p_name varchar(50))
BEGIN    
     insert into c_guid (name,guid) values(p_name,1) ON DUPLICATE KEY UPDATE guid=guid+1;    
     select guid from c_guid where name=p_name;          
END;

call nextGuid('user_pk');