当前位置: 移动技术网 > IT编程>数据库>MSSQL > Hibernate通过SQL查询常量时只返回第一个字符问题的解决方法

Hibernate通过SQL查询常量时只返回第一个字符问题的解决方法

2018年12月10日  | 移动技术网IT编程  | 我要评论

河北人事信息网,毕丽梅照片,孙隽圣

在做统计查询的时候需要使用到一个常量,如

session.createsqlquery("select '张三' as name from tab").list() 

查询,结果只返回了一个 ‘张’。常量在中被认为是char类型的,hibernate取值时将其保存为character类型,而character只能保存一个字符,所以造成返回值只存在一个字符。

解决方法:

1、设置标量对应的类型

session.createsqlquery("select '张三' as name from tab")
    .addscalar("name", hibernate.string)
    .list() 

2、显示的转换类型

session.createsqlquery("select cast('张三' as varchar(10)) as name from tab").list() 

3、使用hql

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网