hibernate的原生sql查询出错!高手帮帮忙!

skyforsky 2008-11-13 12:06:27
下面是我的查询语句:
select top 5 {theme.*} from Theme {theme} where state=1 and type=1 order by newid()

下面是我的查询代码:
public List lisst(String sql) {
Session sess=super.getSession();
Query sqlquery=sess.createSQLQuery(sql).setEntity("theme",Theme.class);
List ls=sqlquery.list();
sess.close();
return ls;
}

下面是我报的错:
Parameter theme does not exist as a named parameter in [select top 5 {theme.*} from Theme {theme} where state=1 and type=1 order by newid()]
...全文
180 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaojun0124 2008-11-17
  • 打赏
  • 举报
回复
我顶9楼的。。把setEntity改成addEntity就OK了
xiaojiit 2008-11-14
  • 打赏
  • 举报
回复
用Criteria,改用这个,进行查询,试试?
yanqing7026 2008-11-14
  • 打赏
  • 举报
回复
setEntity是用来给参数赋值的,这个hql里也没参数啊
时光瞄 2008-11-14
  • 打赏
  • 举报
回复
我刚才看了下api,你看这样搞行不行?
SQLQuery query = session.createSQLQuery(sql).addEntity("theme",Theme.class)

把setEntity改成addEntity
时光瞄 2008-11-14
  • 打赏
  • 举报
回复
楼上的 sql语句里面可以写你的包名这样的东西吗?仅仅是sql语句
zou_wei_forever 2008-11-14
  • 打赏
  • 举报
回复
先在Theme类中提供一个带参数的构造方法:如,
public Theme(参数1,参数2,参数3,......){
this.参数1 = 参数1;
this.参数2 = 参数2;
......
}
查询语句这样写:
select top 5 new 你的包名.Theme(参数1,参数2,参数3,......) from Theme t where t.state=1 and t.type=1 order by newid()
Landor2004 2008-11-14
  • 打赏
  • 举报
回复
String sql = "select top 5 {theme.*} from Theme {theme} where state=1 and type=1 order by newid() "
Query sqlquery=sess.createSQLQuery(sql,"theme",Theme.class);
这样不行?提示什么
skyforsky 2008-11-13
  • 打赏
  • 举报
回复
也不行~
Landor2004 2008-11-13
  • 打赏
  • 举报
回复
Query sqlquery=sess.createSQLQuery(sql,"theme",Theme.class);
skyforsky 2008-11-13
  • 打赏
  • 举报
回复
不行~依然报错!
lihan6415151528 2008-11-13
  • 打赏
  • 举报
回复
select top 5 {theme.*} from Theme {theme} where state=1 and type=1 order by newid()

改成

select top 5 (theme.*) from Theme theme where theme.state=1 and theme.type=1 order by theme.newid()

之后用hql语句查询

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧