CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

Hibernate2的分页问题

楼主bitiliu(bitiliu)2006-07-03 09:29:20 在 Java / Web 开发 提问

用Hibernate2实现分页,总是抛出异常,数据库用的是MySql   3.21,Server用的是Tomcat5,老是抛出异常Could   not   execute   query!  
  //--------------------------------------  
  String   hql   =   "from   Article";  
  Session   s   =   dao.getSession();  
  Query   query   =   s.createQuery(hql);  
  query.setMaxResults(5);  
  query.setFirstResult(2);  
  List   list   =   query.list();  
  //--------------------------------------  
   
  net.sf.hibernate.exception.SQLGrammarException:   Could   not   execute   query  
  at   net.sf.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:58)  
  at   net.sf.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29)  
  at   net.sf.hibernate.impl.SessionImpl.convert(SessionImpl.java:4131)  
  at   net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1557)  
  at   net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:49)  
  at   com.bitiliu.website.util.WebsiteBusiness.main(WebsiteBusiness.java:687)  
  Caused   by:   java.sql.SQLException:   You   have   an   error   in   your   SQL   syntax   near   'select   rownumber()   over()   as   rownumber_,   article0_.id   as   id,   article0_.title   as   '   at   line   1  
  at   com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2851)  
  at   com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1531)  
  at   com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1622)  
  at   com.mysql.jdbc.Connection.execSQL(Connection.java:2385)  
  at   com.mysql.jdbc.Connection.execSQL(Connection.java:2306)  
  at   com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1877)  
  at   com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1722)  
  at   net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:89)  
  at   net.sf.hibernate.loader.Loader.getResultSet(Loader.java:880)  
  at   net.sf.hibernate.loader.Loader.doQuery(Loader.java:273)  
  at   net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:138)  
  at   net.sf.hibernate.loader.Loader.doList(Loader.java:1063)  
  at   net.sf.hibernate.loader.Loader.list(Loader.java:1054)  
  at   net.sf.hibernate.hql.QueryTranslator.list(QueryTranslator.java:854)  
  at   net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1554)  
  ...   2   more 问题点数:100、回复次数:3Top

1 楼loverface(双面人)回复于 2006-07-03 09:55:05 得分 90

估计是你的<property   name="dialect">配的不对吧,看你的异常好象你选的是ORACLE吧.把hibernate.cfg.xml发上来看看.Top

2 楼bitiliu(bitiliu)回复于 2006-07-03 10:49:25 得分 0

呵呵,楼上的一语中的,我设成DB2的了。你是如何看不来的?  
  Top

3 楼nighthawk(我们孤单,我们并肩)回复于 2006-07-03 10:49:48 得分 10

1,检查你的映射文件中用的tld,有可能是3.0的版本吧  
  2,检查你的sql语句。Article是否在配置文件中注册成功。Top

相关问题

关键词

得分解答快速导航

  • 帖主:bitiliu
  • loverface
  • nighthawk

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo