hibernate查询数据表char类型字段只返回一个字符
在oracle或sqlServer下会遇到,查询数据表字段类型为char,如果使用Hibernate原生SQL去执行查询,往往只会返回
一个字符.原因是char在java中只有两个字节.
解决方法
1.改成
select cast(列 as varchar2(列大小)) from 表;或者改为 select trim(列) from 表
2.指定列返回的类型.
SQLQuery query = session.createSQLQuery();
query.addScalar(columnAlias,Type);
2、关于sql查询字符char类型数据的条件使用
字段名:order_no
数据类型:char
查询目标:查询order_no中包含‘1234’的所有记录
sql语句:select * from 表名 where (order_no like ‘%1234%’)
注意:跟其它条件不一样的地方就是需要在条件外加(),其它没什么技术含量。