首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL:有没有简单的方法把UUID转换成整数?

MySQL:有没有简单的方法把UUID转换成整数?
EN

Stack Overflow用户
提问于 2012-10-16 09:19:56
回答 1查看 3.4K关注 0票数 2

我需要将数据从一个系统A传输到系统B。系统A将用户I存储为UUID,系统B将其存储为整数。

我正在使用UUID语句从系统A检索并保存数据,然后将其传输到系统B。有没有一种简单的方法可以在MySQL select语句中将MySQL转换为整数?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-16 11:53:36

正如注释中所讨论的,您不能简单地将UUID转换为整数并期望它是唯一的。UUID是128位,而INT(10)可能是32位。这意味着您必须忽略96位,这等同于大量的潜在冲突(对于每个唯一的32位值,大约有78个不同的UUID)。

并不是所有的东西都丢失了,因为在32位中,您可以表示大约40亿用户,这可能就足够了。您真正需要做的就是将现有的UUID映射到一个整数,这实际上非常简单。

要实现这一点,您可以制作一个转换表,其中存储UUID (作为主键)和唯一的整数(可能是自动增量字段)。您可以使用它从系统A映射到系统B(反之亦然)。您可以将该表放入这两个数据库中的任何一个数据库中,也可以将其单独保存。就我个人而言,我会把它放到系统B中,因为那是userId整数值真正有意义的地方。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12906280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档