]
Gail Badner resolved HHH-5135.
------------------------------
Resolution: Fixed
Fix Version/s: 3.5.2
Fixed in trunk and Branch_3_5.
This should not be a problem for functions that have arguments.
If a column has the same name as a no-arg function, (e.g., current_date), then the mapped
column will need to have back-ticks (e.g., `current_date`) to work properly.
"Ambiguous column" exception thrown with columns having the
same name as a function registered with the dialect (e.g. to_date, floor)
-------------------------------------------------------------------------------------------------------------------------------------
Key: HHH-5135
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-5135
Project: Hibernate Core
Issue Type: Bug
Components: core
Affects Versions: 3.5.0-Final, 3.5.1
Environment: Hibernate 3.5.1, Oracle 10.2.0.1.0
Reporter: Vladimir Ivanov
Assignee: Gail Badner
Fix For: 3.5.2
Attachments: test_case.zip
Original Estimate: 8h
Remaining Estimate: 8h
I have entity 'Period' with property 'toDate' mapped to database column
with name 'TO_DATE' (Our database is Oracle 10g). When this entity is queried via
HQL, prefix for this entity is missed. Following SQL query is produced:
Hibernate:
/*
from
Period p */ select
*
from
( select
period0_.ID as ID44_,
period0_.TXN_VER as TXN3_44_,
period0_.FROM_DATE as FROM4_44_,
TO_DATE as TO5_44_,
period0_.POSITION_MONTH as POSITION7_44_,
period0_.IS_CLOSE as IS12_44_,
period0_.IS_OPEN as IS13_44_,
period0_.DISC_TYPE as DISC2_44_
from
SOME_SCHEMA.T_PERIOD period0_ )
where
rownum <= ?
This leads to database error in case of more advanced query (with joins etc). For
example, we have following error in production: java.sql.SQLException: ORA-00918: column
ambiguously defined
Probably the reason of this behaviour is that Hibernate tries to interpret
'TO_DATE' as the name of SQL function.
In Hibernate 3.3.2.GA prefix is added correctly.
Domain object, DAO, Test and Hibernate configuration are in the attachment.
I used Spring framework to configure test.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: