hibernate连接SQL2005报错--对象名....无效

[Microsoft][SQLServer   2005   Driver   for   JDBC][SQLServer]对象名   'blog.admin '   无效

 

我hibernate.show_sql打印了一下sql语句如下

 

select
        admin0_.id as id36_,
        admin0_.loginName as loginName36_,
        admin0_.password as password36_,
        admin0_.authority as authority36_,
        admin0_.bigregionid as bigregio5_36_ 
    from
        blog.admin admin0_ 

 

 

这句话在查询分析器里面执行是报错的,依然是blog.admin对象名无效,检查了数据库没写错,表名也没写错

 

老以为是"[SQLServer]对象名 'blog.admin' 无效" 这里作怪!数据库删了又建,建了又删!

真想放弃啊

突然,眼睛一亮,才发觉,真正作怪的可能是

 

Hibernate: blog.admin admin0_

 

Hibernate: blog.dbo.admin admin0_

看看它与上面两句有什么区别

 

 

看出来了吧!少了个dbo,blog是我的数据库名称!

 

解决方法:在XXX.hbm.xml中修改catalog="blog" schema="dbo",我这里是Admin.hbm.xml

 

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- 
    Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
    <class name="com.myplan.ppcdao.Admin" table="admin" catalog="blog" schema="dbo">
     <id name="id" type="java.lang.Integer">
            <column name="id" />
            <generator class="identity" />
        </id>
        <property name="loginName" type="java.lang.String">
            <column name="loginName"/>
        </property>
        <property name="password" type="java.lang.String">
            <column name="password"/>
        </property>
        <property name="authority" type="java.lang.Integer">
            <column name="authority"/>
        </property>
        <property name="bigregionid" type="java.lang.Integer">
            <column name="bigregionid"/>
        </property>
    </class>
</hibernate-mapping>

 

 

重新启动数据库和tomcat,一切OK!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值