今天遇到一个奇怪的问题,使用Hibernate来连接数据库,并且查询数据库的信息。
因为关联了好几个表,所以是把Hibernate当做sql来使用的。
但是测试没有查询到任何数据,而用pl/sql来跑这条语句的时候,就可以正常出数据。
不知道说清楚了没有,希望有经验的说说这是什么回事
------解决思路----------------------
没说清楚,贴代码
------解决思路----------------------
Hibernate 配置不对
------解决思路----------------------
我也曾经遇到过一个类似问题。
极其可能是你在链接其他表的时候,关联字段的类型不匹配。或者你查询的 内容的类型不匹配导致的。
------解决思路----------------------
得贴代码啊 求给分
------解决思路----------------------

------解决思路----------------------
hibernate写得不对 。上代码,瞅瞅。。
------解决思路----------------------
楼主,我大体这么理解你的问题。hibernate是一个面向对象的框架,如果多表查询的时候,你需要拼写hql语句,hibernate使用的查询数据库的语句是hql,它和sql还是一定的区别。所以用plsql跑sql语句,这条sql语句本来是对的,但是并不符合hql的规范或者是会有细节上的差别,你需要将sql转换成hibernate能识别的hql语句形式。
------解决思路----------------------
+1
------解决思路----------------------
用Hibernate框架,就不能用sl语句,必须用hql语句。select ... from 类名 这个类名 是区分大小写的,你注意大小写
------解决思路----------------------
hibernate代码部分写错了吧
------解决思路----------------------
肯定是代码写的不对,那里出错了
------解决思路----------------------
很有可能是代码没有自动编译导致的,我之前写代码时遇到过类似现象,重启ECLIPSE或重启电脑就正常了,或清理一下工程,让全部重新编译一次。
------解决思路----------------------
有时候我们从WORLD之类的文档中COPY的东西可能带有格式,特殊情况下ECLIPSEk 格式不能自动清除、又 不可见,而PLSQL之类的自动清除了,故会产生结果不一致或感觉条件正确而查询不到,再次打开ECLIPSE时,JAVA编辑器清除了格式,故就成功了。。。。。。。
------解决思路----------------------
这就是简化为:SQL与hql的区别了:sql语句操作的是表(table),而hql操作的是对象(这里的对象在配置文件中和表结构对应)
------解决思路----------------------
hibernate 配置不对吧·
------解决思路----------------------
