千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 生成唯一标识符:ExcelUUID

生成唯一标识符:ExcelUUID

来源:千锋教育
发布人:xqq
时间: 2023-11-25 01:08:10 1700845690

一、ExcelUUID是什么?

ExcelUUID是一个可以帮助程序员生成唯一标识符的工具,它使用Excel的自动求和公式和随机数函数来生成一个唯一的标识符。ExcelUUID的代码非常简单,只需要一行函数就可以实现唯一标识符的生成,非常适合在编程中使用。

二、ExcelUUID的代码示例


=CONCATENATE(DEC2HEX(RANDBETWEEN(0,4294967295),8),"-",DEC2HEX(RANDBETWEEN(0,42949),4),"-",DEC2HEX(RANDBETWEEN(0,42949),4),"-",DEC2HEX(RANDBETWEEN(0,42949),4),"-",DEC2HEX(RANDBETWEEN(0,4294967295),8),DEC2HEX(RANDBETWEEN(0,42949),4))

代码中使用了Excel的自动求和公式和随机数函数,先使用RANDBETWEEN(0,4294967295)函数生成8位长度的随机16进制数字作为标识符的前半部分,再用RANDBETWEEN(0,42949)函数生成4位16进制数字作为标识符的后半部分,最后使用CONCATENATE将这些数字组合在一起即可得到唯一标识符。

三、ExcelUUID的实际应用

ExcelUUID可以应用在很多场景下,比如文件命名、数据库主键、分布式系统唯一标识等等。下面以数据库主键为例,展示ExcelUUID的应用。

在数据库中,数据的唯一标识可以使用主键来实现。主键可以是数字、字符甚至是复合主键。使用ExcelUUID可以生成一个32位的唯一标识符,将其作为主键值插入数据库中,一定程度上保证了数据的唯一性。


CREATE TABLE users (
  id char(36) NOT NULL,
  username varchar(255) NOT NULL,
  password varchar(255) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

这是一张MySQL数据库中的表结构,其中主键id是使用char(36)类型,对应ExcelUUID生成的32位标识符。

四、ExcelUUID的优缺点

ExcelUUID的优点有:

代码简单、易懂,可以在不同的编程语言中使用 唯一性高,生成的标识符基本上是唯一的 性能高,生成速度很快

ExcelUUID的缺点有:

容易重复,虽然生成的标识符基本上是唯一的,但由于随机数函数的使用,还是有一定重复的概率 生成的标识符过长,比较不利于人类的阅读和记忆

五、ExcelUUID的改进

针对ExcelUUID的缺点,可以进行以下改进:

使用更复杂的算法,提高唯一性 压缩生成的标识符长度,提高可读性和记忆性 结合时间戳和机器码等信息生成标识符,提高唯一性,可以使用snowflake算法等

六、结语

ExcelUUID是一种简单、易用的生成唯一标识符的工具,可以应用在多个场景下。但需要注意的是,它并不是绝对的唯一,可能会存在一定的重复概率。在实际应用中需要根据需求选择适合的算法和方式。

tags: genie软件
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT