[hibernate-issues] [Hibernate-JIRA] Resolved: (HHH-2868) SubqueryExpression create wrong sql in the case DetachedCriteria has Subcriteria
Diego Pires Plentz (JIRA)
noreply at atlassian.com
Wed Oct 3 14:17:25 EDT 2007
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-2868?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Diego Pires Plentz resolved HHH-2868.
-------------------------------------
Assignee: Diego Pires Plentz
Resolution: Duplicate
> SubqueryExpression create wrong sql in the case DetachedCriteria has Subcriteria
> --------------------------------------------------------------------------------
>
> Key: HHH-2868
> URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-2868
> Project: Hibernate3
> Issue Type: Bug
> Components: core
> Affects Versions: 3.2.5
> Environment: oracle
> Reporter: Sunao Suzuki
> Assignee: Diego Pires Plentz
> Priority: Critical
>
> SubqueryExpression create wrong sql in the case DetachedCriteria has Subcriteria(inner join).
> in the case using DetachedCriteria( has Subcriteria) like below , it's works good.
> DetachedCriteria dc = DetachedCriteria.forClass(Person.class);
> DetachedCriteria in = dc.createCriteria("emails");
> in.add(Restrictions.eq("personEmailId", (long)1));
> dc.setProjection(Projections.id());
> Criteria c = dc.getExecutableCriteria(session);
> c.list();
> select this_.PERSON_ID as y0_ from PERSON this_ inner join PERSON_EMAIL personemai1_ on this_.PERSON_ID=personemai1_.FK_PERSON_ID where personemai1_.PERSON_EMAIL_ID=?
> But in the case using DetachedCriteria( has Subcriteria) for subquery like below, it doesn't work.
> DetachedCriteria dc = DetachedCriteria.forClass(Person.class);
> DetachedCriteria in = dc.createCriteria("emails");
> in.add(Restrictions.eq("personEmailId", (long)1));
> dc.setProjection(Projections.id());
> Criteria c = session.createCriteria(Person.class);
> c.add(Subqueries.propertyIn("personId", dc));
> c.setProjection(Projections.id());
> c.list();
> select this_.PERSON_ID as y0_ from PERSON this_ where this_.PERSON_ID in (select this0__.PERSON_ID as y0_ from PERSON this0__ where personemai1_.PERSON_EMAIL_ID=?)
> I hope fix quickly.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list