Hibernate 数据库执行SQL问题
我用Hibernate连接池,连接MSSQL 2000的数据库。目前提示如下的问题,不知道是什么问题。SQL语句是正常的,没有问题,我已经单独在SQL中执行过。我也已将MSSQLSERVER相关的3个jar文件更新了。但是还是有如下的问题,请教各位:
org.hibernate.exception.GenericJDBCException: could not execute query
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.loader.Loader.doList(Loader.java:2148)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
at org.hibernate.loader.Loader.list(Loader.java:2024)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375)
at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:308)
at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:153)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1106)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
at com.success.util.hibernate.HibernateMgr.findAll(HibernateMgr.java:111)
at com.success.logic.action.PictureAction.findAll(PictureAction.java:52)
at com.success.framework.BaseAction.listall(BaseAction.java:198)
at com.success.framework.BaseAction.dispatch(BaseAction.java:155)
at com.success.framework.BaseAction.execute(BaseAction.java:103)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1192)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:412)
PictureAction.findAll()
{
hsql="from com.success.logic.dbform.ItemPicture o,Device d where o.itemId=7 and o.deviceId=d.id order by o.pictureName asc"
request.setAttribute("forms", HibernateMgr.findAll(hsql));
}
HibernateMgr.findall(String hql) throws Exception
{
Session session = getSession();
try {
Query query = session.createQuery(hql);
List list = query.list(); <------执行到词句的时候提示上面的错误
return list;
} catch (Exception e) {
throw e;
} finally {
Connection conn = session.connection();
if (session != null){
session.close();
}
if (conn !=null){
conn.close();
}
}
}
}
org.hibernate.exception.GenericJDBCException: could not execute query
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.loader.Loader.doList(Loader.java:2148)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
at org.hibernate.loader.Loader.list(Loader.java:2024)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375)
at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:308)
at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:153)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1106)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
at com.success.util.hibernate.HibernateMgr.findAll(HibernateMgr.java:111)
at com.success.logic.action.PictureAction.findAll(PictureAction.java:52)
at com.success.framework.BaseAction.listall(BaseAction.java:198)
at com.success.framework.BaseAction.dispatch(BaseAction.java:155)
at com.success.framework.BaseAction.execute(BaseAction.java:103)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1192)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:412)
PictureAction.findAll()
{
hsql="from com.success.logic.dbform.ItemPicture o,Device d where o.itemId=7 and o.deviceId=d.id order by o.pictureName asc"
request.setAttribute("forms", HibernateMgr.findAll(hsql));
}
HibernateMgr.findall(String hql) throws Exception
{
Session session = getSession();
try {
Query query = session.createQuery(hql);
List list = query.list(); <------执行到词句的时候提示上面的错误
return list;
} catch (Exception e) {
throw e;
} finally {
Connection conn = session.connection();
if (session != null){
session.close();
}
if (conn !=null){
conn.close();
}
}
}
}
...全文
相关推荐
hibernate中持久化是什么
1.1.1 关系型数据库关系型数据库是基于关系模型的数据管理系统,使用SQL(结构化查询语言)进行数据操作。它们具有强大的数据管理和恢复能力,适合企业级应用。
db:db---数据库操作相关
JDBC提供了一套规范,让开发者能够编写与数据库无关的代码。它包括加载驱动、建立连接、执行SQL语句、处理结果集等步骤。
数据库仓库
**监控与维护**: 通过JMX(Java Management Extensions)等工具,Java开发者可以监控数据库仓库的运行状态,包括性能指标、内存使用和SQL执行情况,及时发现并解决问题。
MyEclipse_Hibernate_Quickstart
如果一切正常,您应该能够在控制台看到成功执行的消息,同时数据库中也会有相应的数据变化。
基于JDBC的java数据库操作框架DB-helper(目前仅支持mysql).zip
Java数据库操作框架DB-helper是专为简化JDBC(Java Database Connectivity)编程而设计的一个轻量级工具,主要用于处理与MySQL数据库的交互。


Web 开发
