MySQL实现类似Oracle的序列
Oracle一般使用序列(Sequence)来处理主键字段,而MySQL则提供了自增长(increment)来实现类似的目的;
但在实际使用过程中发现,MySQL的自增长有诸多的弊端:不能控制步长、开始索引、是否循环等;若需要迁移数据库,则对于主键这块,也是个头大的问题。
本文记录了一个模拟Oracle序列的方案,重点是想法,代码其次。
Oracle序列的使用,无非是使用.nextval和.currval伪列,基本想法是:
1、MySQL中新建表,用于存储序列名称和值;
2、创建函数,用于获取序列表中的值;
具体如下:
表结构为:
drop table if exists sequence;
create table sequence (
seq_name VARCHAR(50) NOT NULL, -- 序列名称
current_val INT NOT NULL, --当前值
increment_val INT NOT NULL DEFAULT 1, --步长(跨度)
PRIMARY KEY (seq_name)
);
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容猜你喜欢
AI推送时光机MySQL实现类似Oracle序列的方案
数据库2024-04-02
mysql如何实现类似于oracle的merge语句
数据库2024-04-02
oracle相似度排序方法怎么实现
数据库2024-04-09
Oracle中实现类似于Mysql中的Field()函数功能
数据库2023-06-08
mysql实现自增序列的方法
数据库2024-04-02
SqlServer怎么实现类似Oracle的before触发器
数据库2024-04-02
前端实现类似chatgpt的对话页面(案例)
数据库2023-03-13
MySQL自定义序列数的实现方式
数据库2022-12-28
Mysql似oracle分析函数sum over的实现方法是什么
数据库2024-04-02
MySQL中怎么实现rownum功能类似的语句
数据库2024-04-02
MFC怎么实现类的序列化
数据库2023-08-14
模板类与模板函数序列化和反序列化的实现方式?
数据库2024-04-24
简述Vue怎么实现类似微信的应用程序
数据库2023-05-14
基于Go语言实现类似tree命令的小程序
数据库2024-04-02
如何在MySQL中实现类似PL/SQL的编程功能
数据库2024-03-15
队列技术在PHP与MySQL中的消息序列化和反序列化的实现方法
数据库2023-10-21
咦!没有更多了?去看看其它编程学习网 内容吧