Oracle中wm_concat函数返回问题:导致字段数据类型不一致。expected type: java.lang.String, actual value: $Proxy26

错误原因:

项目oracle+ssh的时候:

使用的是非持久化的查询,因为是多服务器查询,

query = getSession().createSQLQuery(sql).setResultTransformer(Transformers.aliasToBean(clazz));

其中使用 了这句转换:

那么为什么报String的错误列,时因为hibernate查询出来之后我对应数据库(sqlserver)的字段是text,hibernate使用的是blob

所以不能直接转换string;

导致字段映射失败。

 

解决方法:

oracle中,sql语句使用wm_concat函数,可能会返回类型。

要想正常输出回字符串的形式,可以在前面加to_char().

即:to_char(wm_concat(column))

 

 

你可能感兴趣的:(笔记)