问题描述
以前用的是sqlserver,现在该为mysql,数据库连接上了,但是以前写的查询报错了——————————————————select userinfo0_.id as id0_, userinfo0_.company_name as company2_0_, userinfo0_.user_name as user3_0_, userinfo0_.mobile_number as mobile4_0_ from Demo.dbo.user_info userinfo0_,Demo.dbo.user_info去掉dbo就可以查询出来,请问要如何解决呢?public int queryAll() {// TODO Auto-generated method stubString hql="from UserInfo";List list = getHibernateTemplate().find(hql);org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute query; SQL [select userinfo0_.id as id0_, userinfo0_.company_name as company2_0_, userinfo0_.user_name as user3_0_, userinfo0_.mobile_number as mobile4_0_ from Demo.dbo.user_info userinfo0_]; nested exception is org.hibernate.exception.SQLGrammarException: could not execute queryorg.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:629)org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:411)org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:912)org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:904)com.seamoon.demo.dao.impl.UserInfoDAOImpl.queryAll(UserInfoDAOImpl.java:181)
解决方案
from Demo.dbo.user_info userinfo0_]1、检查hibernate配置hibernate.default_schema 在生成的SQL中, 将给定的schema/tablespace附加于非全限定名的表名上. 取值 SCHEMA_NAME hibernate.default_catalog 在生成的SQL中, 将给定的catalog附加于非全限定名的表名上. 取值 CATALOG_NAME 删掉这两个2、看下你的hbm配置文件 是是否有catalog 和 schema 删掉hibernate sheme和catalog的问题?5<hibernate-mapping schema="schemaName" (1) catalog="catalogName" (2) 或<hibernate-mapping> <class catalog="***">
解决方案二:
spring配置数据库的代码呢?是不是数据库的名称不对啊?