首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

hibernate 使用sql出现异常 ORA-00918: 未明确定义列

2013-08-04 
hibernate 使用sql出现错误ORA-00918: 未明确定义列在hibernate中使用sql进行联表查询时出现错误 ORA-0091

hibernate 使用sql出现错误 ORA-00918: 未明确定义列
在hibernate中使用sql进行联表查询时出现错误 ORA-00918: 未明确定义列

sql语句:
select b.*,c.*,d.*,e.* from B_COLLECT_INFO b,B_SPECIMEN_CLASS_TABLE c,B_SPECIMEN_CLASS_TABLE d,B_SPECIMEN_CLASS_TABLE e where c.CLASS_ID(+)= b.ORDERS and d.CLASS_ID (+)= b.FAMILY and e.CLASS_ID(+)= b.GENUS

hibernate生成的语句:
Hibernate: select b.*,c.*,d.*,e.* from B_COLLECT_INFO b,B_SPECIMEN_CLASS_TABLE c,B_SPECIMEN_CLASS_TABLE d,B_SPECIMEN_CLASS_TABLE e where c.CLASS_ID(+)= b.ORDERS and d.CLASS_ID (+)= b.FAMILY and e.CLASS_ID(+)= b.GENUS

这一条是可以执行的 没有错误。但是加上分页的时候,生成的sql语句就有错了:
Hibernate: select * from ( select b.*,c.*,d.*,e.* from B_COLLECT_INFO b,B_SPECIMEN_CLASS_TABLE c,B_SPECIMEN_CLASS_TABLE d,B_SPECIMEN_CLASS_TABLE e where c.CLASS_ID(+)= b.ORDERS and d.CLASS_ID (+)= b.FAMILY and e.CLASS_ID(+)= b.GENUS ) where rownum <= ?

这是分页生成的sql语句,可能是分页语句里面的select * 导致了错误的出现。

请问有没有解决的办法,或者有其他的方法解决这个问题 谢谢了。

Hibernate sql select
[解决办法]

引用:
rownum指的是哪一张表的?

对不起,应该不是上午说的那个错误。
我觉得应该是这样,楼主试一下
select x.* from ( select b.*,c.*,d.*,e.* from B_COLLECT_INFO b,B_SPECIMEN_CLASS_TABLE c,B_SPECIMEN_CLASS_TABLE d,B_SPECIMEN_CLASS_TABLE e where c.CLASS_ID(+)= b.ORDERS and d.CLASS_ID (+)= b.FAMILY and e.CLASS_ID(+)= b.GENUS ) x where rownum <= ?

热点排行