Oracle
 sql >> Base de données >  >> RDS >> Oracle

Convertir le tableau d'octets d'Oracle RAW en System.Guid ?

Il s'avère que le problème était l'ordre des octets que vous obtenez dans Guid.ToByteArray() et non Oracle lui-même. Si vous prenez le Guid "11223344-5566-7788-9900-aabbccddeeff " et appelez ToByteArray() dessus, vous obtenez "44332211665588779900AABBCCDDEEFF ". Si vous retransmettez ensuite ce tableau d'octets au constructeur pour Guid, vous obtenez le Guid d'origine. Mon erreur était d'essayer d'interroger la base de données Oracle au format Guid d'origine (avec les tirets supprimés) au lieu du résultat du ToByteArray() appeler.

Je n'ai toujours aucune idée de la raison pour laquelle les octets sont ordonnés de cette façon, mais cela n'a apparemment rien à voir avec Oracle.