为什么我hibernate session.createQuery(hql)不能加select * ..只能是 from .. 别人的可是是完整的hql语

如题所述

hql语句是这样的啊,这是hql语句的语法,如果要是完整的,那就是使用createSQLQuery
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-13
select * 这样的表达式本身就是错的。。。。
第2个回答  推荐于2018-04-12
createQuery只能用hql语句,要用sql语句(也就是你说的select * )应该使用session.createSQLQuery(sql);
当然createQuery方法也是可以加Select 的, 不过如果要加select的话,需要有明确的构造函数。举个例子
比如一个实体类UserInfo有三个字段:id,name,gender。如果你要使用select的话就需要声明一个构造函数
public UserInfo(int id, String name, int gender) {
......你懂得
}
然后就是getSession().createQuery("select new UserInfo(id, name, gender) from UserInfo");
基本上就这样了。有什么不懂得,再说吧。本回答被提问者和网友采纳
第3个回答  2012-07-13
hql语句是不需要加select *
好好看一下hibernate 基础。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网