mysql - 存储 MySQL GUID/UUID

标签 mysql binary guid uuid

这是我能想到的将 UUID() 生成的 MySQL GUID/UUID 转换为二进制 (16) 的最佳方法:

UNHEX(REPLACE(UUID(),'-',''))

然后将其存储在 BINARY(16) 中

这样做有什么我应该知道的含义吗?

最佳答案

影响不大。它会稍微减慢查询速度,但您几乎不会注意到它。

UNIQUEIDENTIFIER 无论如何都会在内部存储为 16 字节二进制

如果您要将二进制文件加载到客户端并在那里解析,请注意 bit order,它可能具有不同于初始 NEWID() 的其他字符串表示.

OracleSYS_GUID() 函数很容易出现这个问题,将其转换为字符串会在客户端和服务器上产生不同的结果。

关于mysql - 存储 MySQL GUID/UUID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/547118/

相关文章:

c# - guid 可以是一个好的分区键吗?

windows - Linux 和 Windows 应用程序的 GUID,Qt

c# - 如何使我的 GUID 对 VSTO 加载项可见

php - 从 2 个表中选择并按 1 排序

mysql删除和更新使用带有多个项目提交按钮的复选框

c++ - 如何修复链接器错误?

java - 确定数组是否会生成与提供的相同的 BST - 使用递归

mysql - 结合SUB_DATE和TIMEDIFF在mysql中减去1小时

mysql - 从数据库中选择,其中行中的 2 个项目不是特定值

python - Python 中的异或错误 (2.7)