当前位置: 代码迷 >> J2SE >> Hibernate与sql有什么区别?该怎么解决
  详细解决方案

Hibernate与sql有什么区别?该怎么解决

热度:106   发布时间:2016-04-23 19:50:47.0
Hibernate与sql有什么区别?
今天遇到一个奇怪的问题,使用Hibernate来连接数据库,并且查询数据库的信息。
因为关联了好几个表,所以是把Hibernate当做sql来使用的。
但是测试没有查询到任何数据,而用pl/sql来跑这条语句的时候,就可以正常出数据。

不知道说清楚了没有,希望有经验的说说这是什么回事
------解决思路----------------------
没说清楚,贴代码
------解决思路----------------------
Hibernate  配置不对
------解决思路----------------------
我也曾经遇到过一个类似问题。
极其可能是你在链接其他表的时候,关联字段的类型不匹配。或者你查询的 内容的类型不匹配导致的。
------解决思路----------------------
得贴代码啊  求给分
------解决思路----------------------
程序员被bug玩,被缓存玩,被自己玩
------解决思路----------------------
hibernate写得不对 。上代码,瞅瞅。。
------解决思路----------------------
楼主,我大体这么理解你的问题。hibernate是一个面向对象的框架,如果多表查询的时候,你需要拼写hql语句,hibernate使用的查询数据库的语句是hql,它和sql还是一定的区别。所以用plsql跑sql语句,这条sql语句本来是对的,但是并不符合hql的规范或者是会有细节上的差别,你需要将sql转换成hibernate能识别的hql语句形式。
------解决思路----------------------
引用:
楼主,我大体这么理解你的问题。hibernate是一个面向对象的框架,如果多表查询的时候,你需要拼写hql语句,hibernate使用的查询数据库的语句是hql,它和sql还是一定的区别。所以用plsql跑sql语句,这条sql语句本来是对的,但是并不符合hql的规范或者是会有细节上的差别,你需要将sql转换成hibernate能识别的hql语句形式。
+1
------解决思路----------------------
用Hibernate框架,就不能用sl语句,必须用hql语句。select  ...  from 类名  这个类名 是区分大小写的,你注意大小写
------解决思路----------------------
hibernate代码部分写错了吧
------解决思路----------------------
肯定是代码写的不对,那里出错了
------解决思路----------------------
很有可能是代码没有自动编译导致的,我之前写代码时遇到过类似现象,重启ECLIPSE或重启电脑就正常了,或清理一下工程,让全部重新编译一次。
------解决思路----------------------
引用:
很有可能是代码没有自动编译导致的,我之前写代码时遇到过类似现象,重启ECLIPSE或重启电脑就正常了,或清理一下工程,让全部重新编译一次。
有时候我们从WORLD之类的文档中COPY的东西可能带有格式,特殊情况下ECLIPSEk 格式不能自动清除、又 不可见,而PLSQL之类的自动清除了,故会产生结果不一致或感觉条件正确而查询不到,再次打开ECLIPSE时,JAVA编辑器清除了格式,故就成功了。。。。。。。
------解决思路----------------------
引用:
楼主,我大体这么理解你的问题。hibernate是一个面向对象的框架,如果多表查询的时候,你需要拼写hql语句,hibernate使用的查询数据库的语句是hql,它和sql还是一定的区别。所以用plsql跑sql语句,这条sql语句本来是对的,但是并不符合hql的规范或者是会有细节上的差别,你需要将sql转换成hibernate能识别的hql语句形式。


这就是简化为:SQL与hql的区别了:sql语句操作的是表(table),而hql操作的是对象(这里的对象在配置文件中和表结构对应)
------解决思路----------------------
hibernate 配置不对吧·
------解决思路----------------------
  相关解决方案