mysql怎么设置主键增长序列_mysql 如何设置自动增长序列 sequence(一)
背景:由于项目需要,必须用mysql设置主键自增长,而且想用字符串的。经过上网查找并且实验,终于做出了一套方案。现在就共享给大家! 解决思路:由于mysql不带sequence,所以要手写的,创建一张储存sequence的表(tb_sequence),然后手动插入一条数据 ,最后
背景:由于项目需要,必须用mysql设置主键自增长,而且想用字符串的。经过上网查找并且实验,终于做出了一套方案。现在就共享给大家!
解决思路:由于mysql不带sequence,所以要手写的,创建一张储存sequence的表(tb_sequence),然后手动插入一条数据 ,最后自定义一个函数来处理要增长的值。
一起做吧:
1、创建表tb_sequence,用来存放sequence值:
[sql] view
plaincopyprint?
createtabletb_sequence(namevarchar(50)notnull,current_valueintnotnull,_incrementintnotnulldefault1,primarykey(name));
2、手动插入数据:
[sql] view
plaincopyprint?
insertintotb_sequencevalues('userid',100,2);
3、定义函数 _nextval:
[sql] view
plaincopyprint?
DELIMITER //
createfunction_nextval(nvarchar(50))returnsinteger
begin
declare_curint;
set_cur=(selectcurrent_valuefromtb_sequencewherename= n);
updatetb_sequence
setcurrent_value = _cur + _increment
wherename=n ;
return_cur;
end;
//
说明:delimiter // ---->定义语句结束符。其他的代码 自己看吧。
4、恢复默认的语句结束符:(可以省略但是结束符必须用// ,为了方便还是设置回来。)
[sql] view
plaincopyprint?
DELIMITER ;
5、检验结果
多次执行以下语句:
[sql] view
plaincopyprint?
select_nextval('userid');
结果显示:
[sql] view
plaincopyprint?
mysql>select_nextval('userid');
+--------------------+
| _nextval('userid') |
+--------------------+
| 102 |
+--------------------+
1 row inset(0.00 sec)
mysql> select_nextval('userid');
+--------------------+
| _nextval('userid') |
+--------------------+
| 104 |
+--------------------+
1 row inset(0.00 sec)
mysql> select_nextval('userid');
+--------------------+
| _nextval('userid') |
+--------------------+
| 106 |
+--------------------+
1 row inset(0.00 sec)
6、实验结束。
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
mysql怎么设置主键增长序列_mysql 如何设置自动增长序列 sequence(一)相关推荐
- mysql学习second主键约束,唯一约束,自动增长(创建时候添加,删除,删除添加)
-- 创建表时候又唯一约束 CREATE TABLE stu01(id INT,phone_number VARCHAR(20) UNIQUE ); -- 注意唯一约束可以有null值但是只能有一列一 ...
- mysql设置主键的作用_mysql设置主键有什么用
mysql设置主键的作用是:1.唯一地标识表中的每一行,通过它可强制表的实体完整性:2.主要是用于其他表的外键关联,以及本记录的修改与删除. [相关学习推荐:mysql教程] mysql设置主键的作用 ...
- mysql中的主键地作用_mysql主键概念及作用
mysql主键概念及作用 发布时间:2020-04-23 11:15:38 来源:亿速云 阅读:217 作者:三月 本文主要给大家介绍mysql主键概念及作用,希望可以给大家补充和更新些知识,如有其它 ...
- 数据的完整性(正确性和准确性):分类-实体完整性:主键约束、唯一约束、自动增长列。域完整性-非空约束、默认值约束、检查约束。引用完整性-一对一、一对多、多对多
文章目录 1 数据的完整性作用 2 完整性的分类 2.1 实体完整性 2.1.1 主键约束 primary key 2.1.2 唯一约束 unique 2.1.3 自动增长列 auto_increme ...
- php主键自增sql语句,sql 自动增长的主键
问:SQL Server 2005中设计表时和在SQL Server Management Studio Express中如何得到 自动 编号字段? 答:具体步骤如下: ①像Access中的 自动 编 ...
- mysql插入时主键id为uuid_mysql插入数据自动生成主键uuid
DemoMapper.java //注意方法的返回值必须是void; void add(Demo demo); ============================================ ...
- mysql中主键的用法_MySQL中的主键以及设置其自增的用法教程
1.声明主键的方法:您可以在创建表的时候就为表加上主键,如: CREATE TABLE tbl_name ([字段描述省略...], PRIMARY KEY(index_col_name)); 也可以 ...
- MySql Workbench如何设置主键自增长
一直以来使用的MySQL数据库客户端都是Navicat,不得不说Navicat用起来还是很方便的. 可惜它是商业收费软件,因为版权原因,公司禁止使用其PJ软件.要求全部卸载 于是乎,换用了MySQL官 ...
- mysql的主键有什么作用_mysql设置主键有什么用
mysql设置主键的作用是:1.唯一地标识表中的每一行,通过它可强制表的实体完整性:2.主要是用于其他表的外键关联,以及本记录的修改与删除. [相关学习推荐:mysql教程] mysql设置主键的作用 ...
最新文章
- 170亿参数加持,微软发布史上最大Transformer模型
- linux mysql 1030,MySQL报错ERROR 1030 (HY000): 解决过程
- 1.单机部署hadoop测试环境
- spring Boot 2.1.5 (1)---安装环境
- webpy使用笔记(一)
- VMWare虚拟机空间扩展
- vs2019配置opencv_VS2019下Opencv配置
- SQL Server 聚合函数算法优化技巧
- mysql升级:rpm包安装升级
- CRM及协同办公高保真原型、审批管理、办公申请、工单管理、任务管理、日程管理、工作报告、签到考勤、客户管理、销售线索、商机管理、订单管理、账务管理、统计报表、回款管理、发票管理、报销管理、拜访跟进
- 想从事Python后端开发?如何入门和学习,这篇文章来告诉你。
- 读书笔记-大教堂与集市
- 微信公众平台开发(34)微相册
- 微信公众平台开发者配置
- 常用的html代码 加粗 加亮 字型加大 变色等
- 微搭低代码入门教程01
- 分享通达信选股公式源码
- 戴尔服务器EMS01安装系统,PowerEdge 2950 (DC Power Supply) - EMS01
- Cortex内核的比较(M3和M4)
- 使用 OpenGL 绘制正方形
热门文章
- java set中取数据_Java中取数据库用的ResultSet问题
- c#web页面显示弹窗_web页面实现PDF读取显示
- java 操作系统 模拟 daima_编写一个程序,利用Java语言模拟操作系统进程调度管理...
- ios双指放大缩小_用PS设计APP过程中改进IOS设计流程的30个秘诀
- 浏览器的cookie和服务器存储的session有什么关联,下面妙文为你解答
- Mysql 备份和还原
- 06构造方法和文件读取
- 设计模式:000设计模式与面向对象介绍
- python showinfo 方法_Python GUI之tkinter窗口视窗教程大集合(看这篇就够了)
- Envi和Arcgis软件冲突的解决方法