Oracle sql使用sys_guid() 生成32位id亂碼解決辦法


Oracle sql使用sys_guid() 生成32位id亂碼解決辦法

(48條消息) Oracle sql使用sys_guid() 生成32位id亂碼解決辦法_Zero .-CSDN博客

前言
之前用過sys_guid()方法生成過32位id,時間一長忘掉了。正所謂'好記性不如爛筆頭',今天記一記。

正題
select sys_guid() from dual;


可以看到,直接亂碼了。

原因:SYS_GUID 以16位RAW類型值形式返回一個全局唯一的標識符

解決辦法
使用rawtohex()函數方法。

這里科普一下

hextoraw():十六進制字符串轉換為raw;

rawtohex():將raw串轉換為十六進制;

亂碼解決:

select rawtohex(sys_guid()) from dual;


可以看到,亂碼沒有了。

轉小寫:
select lower(rawtohex(sys_guid())) from dual;

————————————————
版權聲明:本文為CSDN博主「Zero .」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/admin123404/article/details/107763333


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM