Oracle の SYS_GUID() 関数がRFC 4122 準拠の 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-Version に名前を付ける必要があると定義されているためです。
RFC 4122 準拠の UUID (バージョン 3) の構文:
xxxxxxxx-xxxx-3xxx-xxxx-xxxxxxxxxxxx