quoted column doesn't be quoted in sub-query
--------------------------------------------
Key: HHH-5140
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-5140
Project: Hibernate Core
Issue Type: Bug
Components: core
Affects Versions: 3.5.1
Reporter: Strong Liu
Fix For: 3.5.x
for example:
{quote}
<union-subclass name="Employee" table="UEmployee">
<property name="title" column="`unique`"/>
<property name="department" column="dept"/>
<many-to-one name="manager" column="mgr_id"
class="Employee" cascade="none"/>
<set name="minions" inverse="true" lazy="true"
cascade="all">
<key column="mgr_id"/>
<one-to-many class="Employee"/>
<filter name="region" condition="region = :userRegion"/>
</set>
</union-subclass>
{quote}
note, that "title" property's column name is unique, and "unique"
is a keyword in all DBs,
hibernate generates the column quoted, like this:
{quote}
create table UEmployee (
person_id bigint not null,
name varchar(255),
company varchar(255),
region varchar(255),
"unique" varchar(255),
dept varchar(255),
mgr_id bigint,
primary key (person_id),
unique (name)
)
{quote}
but with a simple hql query "from Person", which "Person" is the
parent class of Employee, it will issue the following sql query:
{quote}
select
person0_.person_id as person1_0_,
person0_.name as name0_,
person0_.company as company0_,
person0_.region as region0_,
person0_."unique" as unique1_1_,
person0_.dept as dept1_,
person0_.mgr_id as mgr3_1_,
person0_.contactOwner as contactO1_2_,
person0_.clazz_ as clazz_
from
( select
person_id,
name,
company,
region,
null as unique,
null as dept,
null as mgr_id,
null as contactOwner,
0 as clazz_
from
UPerson
union
select
person_id,
name,
company,
region,
unique,
dept,
mgr_id,
null as contactOwner,
1 as clazz_
from
UEmployee
union
select
person_id,
name,
company,
region,
null as unique,
null as dept,
null as mgr_id,
contactOwner,
2 as clazz_
from
UCustomer
) person0_
where
person0_.region = ?
{quote}
see this "null as unique"?
this can be reproduced by org.hibernate.test.subclassfilter.UnionSubclassFilterTest
--
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....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira