hibernate oracle char character 字段的数据表只查出一个字符
在orcal下会遇到数据表中的字段如果为char类型的话,
使用hibernate原生sql去查询执行,返回结果往往会只显示一个字符,
原因是char在java只有两个字节。
解决方法
1.改成
String sql = "select cast(列名 as varchar2(列的大小)) from 表名";
2.通过
public SQLQuery addScalar(String columnAlias, Type type) 限定他返回String就行
SQLQuery query = session.createSQLQuery();
query.addScalar("列名", Hibernate.String)
本文介绍了一个关于使用 Hibernate 在 Oracle 数据库中查询 CHAR 类型字段时的问题:返回结果往往只显示一个字符。文章提供了两种解决方案:一是修改 SQL 语句使用 VARCHAR2 类型;二是通过 publicSQLQuery 的 addScalar 方法指定返回类型为 String。

被折叠的 条评论
为什么被折叠?



