Oracle的SYS_GUID()UUID RFC 4122是否符合?

前端之家收集整理的这篇文章主要介绍了Oracle的SYS_GUID()UUID RFC 4122是否符合?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我不知道Oracle的SYS_GUID()函数是否返回 a RFC 4122 compliant UUID.例如:
sql> select sys_guid() from dual;

SYS_GUID()
--------------------------------
A6C1BD5167C366C6E04400144FD25BA0

我知道,SYS_GUID()返回一个16字节的RAW数据类型。 Oracle使用RAWTOHEX()和可能的TO_CHAR()打印出上述ID。将其解释为符合UUID的字符串格式是正确的,如:

A6C1BD51-67C3-66C6-E044-00144FD25BA0

我认为它不符合RFC 4122标准,因为定义说,有效的UUID必须在UUID本身中命名UUID版本。

RFC 4122兼容UUID(版本3)的语法:

xxxxxxxx-xxxx-3xxx-xxxx-xxxxxxxxxxxx
SYS_GUID是Oracle相当于UUID的。它是全球独一无二的。但是,它不符合RFC 4122;在文档中(在Java XML文档之外)没有引用UUID,我推测缺乏合规性。

我怀疑Oracle本来没有实现RFC 4122,因为他们不认为它是扩展的。我不能想象为什么他们会发明自己的东西,而不是遵守一个标准。

猜你在找的Oracle相关文章