MongoDb Compass中是否有任何设置可以将BinData(3,'ZF+oPxdXYkWz/CyWP 2avpg ==')转换为UUID

3pvhb19x  于 2023-04-05  发布在  Go
关注(0)|答案(1)|浏览(155)

我想转换BinData(3,'ZF+oPxdXYkWz/CyWP 2avpg ==')在UUID格式不修改(或)改变fields.So的原始数据类型是有任何设置MongoDb指南针可转换此.
我试过很多方法,但都找不到

im9ewurl

im9ewurl1#

遗留UUID(二进制子类型3)的问题是字节顺序在BSON规范中没有明确定义。这使得驱动程序在将UUID转换为BSON进行存储时可以自由使用其内部字节顺序。
base64字符串表示的二进制数据为
645fa83f17576245b3fc2c963f66afa6
如果该数据由python、java或c#驱动程序存储,则UUID可能是以下之一:

  • 645fa83f-1757-6245-b3fc-2c963f66afa6
  • 3fa85f64-5717-4561-b3fc-2c963f66afa6
  • 45625717-3fa8-5f64-b3fc-2c963f66afa6

其他驱动程序可以使用不同的字节顺序。
在没有附加信息的情况下,没有单一的算法可以将该二进制数据转换回原始UUID,因此不可能有通用函数来执行该转换。
通常的处理方法是使用新的UUID格式(二进制子类型4),它要求字节排序符合RFC-4122

相关问题