hibernate oracle char character 字段的數(shù)據(jù)表只查出一個(gè)字符
在orcal下會(huì)遇到數(shù)據(jù)表中的字段如果為char類型的話,
使用hibernate原生sql去查詢執(zhí)行,返回結(jié)果往往會(huì)只顯示一個(gè)字符,
原因是char在java只有兩個(gè)字節(jié)。
解決方法
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)