如何在JPA上使用java.util.UUID读取保存为BLOB的SYS_GUID()?

时间:2015-08-12 16:07:33

标签: oracle jpa jpa-2.0

我正在使用现有系统,我想使用sql脚本填充数据。 jpa上定义的一个列为java.util.UUID。我使用SYS_GUID()从sql端生成uuid值。 现在我在尝试从sys_guid()填充uuid的表中读取jpa中的异常。

我应该如何从sql生成uuid所以我可以使用java.util.UUID对象从JPA中读取它?

我使用的是oracle DB 11g

[更新]

似乎问题是UUID和GUID的格式,我发现以下查询从guid转换为uuid:

选择lower(regexp_replace(SYS_GUID(),'(。{2})(。{2})(。{2})(。{2})(。{2})(。{2 }。(。{2})(。{2})(。{4})(。{12})',' \ 4 \ 3 \ 2 \ 1- \ 6 \ 5- \ \ 8 \ 7- \ 9- \ 10'))来自双重

它分开工作但是如果我尝试插入它(blob列)我得到01465. 00000 - "无效的十六进制数" 还尝试使用:SYS.STANDARD.TO_CHAR(SYS_GUID())

0 个答案:

没有答案