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