如果是在把应用部署到别的机器上,修改了数据库名称
如果在尝试了很多办法没有解决,包括修改了数据库名称,以及连接的用户名和密码
如果你的hibernate的hbm.xml文件是myeclipse自动生成的。
那么,请看看下面这个博客写的。
今天给人调试hibernate,发现一个错误,耽误了老半天;
错误提示:org.hibernate.exception.SQLGrammarException: could not execute query
org.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:70)
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
org.hibernate.loader.Loader.doList(Loader.java:1596)
org.hibernate.loader.Loader.list(Loader.java:1577)
org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:395)
org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271)
org.hibernate.impl.SessionImpl.list(SessionImpl.java:844)
org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
org.apache.jsp.index_jsp._jspService(org.apache.jsp.index_jsp:73)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
最后的解决办法是:因为开始采用了hibernate工具生成的*.hbm.xml和pojo文件,移动项目到了另外的机子上,就出现了这样的问题,只要把hbm.xml文件中catalog="*****"删掉就好了
回复:
还有一个原因也会报这错误 schema= "*"
原文地址:http://ylinn.iteye.com/blog/956123