java基于数据库实现全局唯一ID的示例

2023年 8月 11日 37.8k 0

目录
  • 一、原理
  • 二、建立sql函数
  • 三、xml中查询当前ID

一、原理

  在数据库中建立ID序列表记录ID值,其中包含两个重要字段,一个是初始值,另一个是步幅。建立表如下:

二、建立sql函数

 其分别sql语句为:

currval函数

CREATE DEFINER=`root`@`localhost` FUNCTioN `currval`(`keyname` varchar(50)) RETURNS int
BEGIN
DECLARE v int;
SET v=0;
SELECT CURR_VAL INTO v from sequence WHERE SEQNAME=keyname;
RETURN v;
END

nextval函数

CREATE DEFINER=`root`@`localhost` FUNCTION `nextval`(seq VARCHAR(50)) RETURNS int
BEGIN
UPDATE sequence SET CURR_VAL=CURR_VAL+INCREMENT_VAL WHERE SEQNAME=seq;
RETURN currval(seq);
END

三、xml中查询当前ID

select nextval(#{seq})

到此这篇关于java基于数据库实现全局唯一ID的示例的文章就介绍到这了,更多相关java 全局唯一ID内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论