Oracle新建系統表時,要求主鍵為32位uuid,推測Oracle肯定會提供相關的函數。
翻閱相關文檔,果然發現Oracle提供的函數 sys_guid() 用於獲取32位uuid,簡單使用為
select sys_guid() from dual;
該函數返回32位的uuid為大寫,能夠使用 lower(sys_guid()) 轉為小寫.
*用“-”分隔
SELECT SUBSTR(GUID,1,8)||'-'||SUBSTR(GUID,9,4)||'-'||SUBSTR(GUID,13,4)||'-'||SUBSTR(GUID,17,4)||'-'||SUBSTR(GUID,20,12) GUID
FROM
(
SELECT lower(SYS_GUID()) GUID FROM DUAL
)
