hibernate 的关联问题
一个很简单的hql语句,却报了这样一个错误,各位大虾帮我看看是什么问题。先谢了!
org.hibernate.hql.ast.QuerySyntaxError: unexpected token: on near line 1, column
110 [ from net.oa.member.view.MemberView left outer join fetch MemberView.mbOrg
inner join MemberChangeView as mc on MemberView.ID = MemberChangeView.member.ID
where 1=1 and ( MemberView.mbOrg.orgName = ? and MemberChangeView.mbcTime >= ?
)]
at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.j
ava:63)
at org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.j
ava:215)
at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorIm
pl.java:127)
at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl
.java:83)
at org.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.jav
a:427)
at org.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:884)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:834)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
at net.oa.tool.DbProcess.getList(DbProcess.java:379)
at net.oa.member.action.MemberQueryAction.execute(MemberQueryAction.java
:231)
问题点数:20、回复次数:7Top
1 楼mnbvc874(Java EE)回复于 2005-11-19 01:59:35 得分 0
HQL语句是?Top
2 楼rosifox(下着鱼的天)回复于 2005-11-19 08:09:15 得分 0
干嘛用SQL的思维去写HQL语句啊?Top
3 楼rosifox(下着鱼的天)回复于 2005-11-19 08:11:17 得分 5
多个类进行并表查询时前面要指定select语句并只能select一个column字段Top
4 楼frueyang(杨小邪)回复于 2005-11-19 12:00:44 得分 0
这里的错误在于不能选择多个查询字段吗?
如果不用sql的思路, 我这两张表是一对多(MemberView (1) : MemberChangeView(n))的关系,我只在子表里写了映射关系,在主表中没写,那用HQL的思路来写,该怎么写这两者之间的关系呢?Top
5 楼frueyang(杨小邪)回复于 2005-11-20 19:33:29 得分 0
各位路过的大侠给点建议了!Top
6 楼teatop(普贤)回复于 2005-11-21 10:07:54 得分 15
父亲那里也要写吧~~双向关联
<set name="MemberChangeViewId" lazy="true" inverse="true"
cascade="delete" sort="unsorted">
<key column="MemberChangeView_Id" />
<one-to-many class="........MemberChangeView.class" />
</set>
我也刚学,不知道对不对Top
7 楼frueyang(杨小邪)回复于 2005-11-21 12:37:08 得分 0
谢谢楼上的
我原来是没有在主表里写关联,只是在子表中写了到父表的关联,看来还是要写双向关联。
结贴了Top





