【发布时间】:2010-07-01 12:54:27
【问题描述】:
我使用 Hibernate 3.5.3 和 Oracle 10g 数据库
我有以下关系的bean
@OneToMany
@JoinTable(name="dispenser_accounts",
joinColumns=@JoinColumn(name="terminal_id"),
inverseJoinColumns=@JoinColumn(name="dispenser_section_id"))
@MapKey(name="dispenserNumber")
private Map<Integer, DispenserAccount> activeDispensers = new HashMap<Integer, DispenserAccount>();
当我尝试从 activeDispensers 获取数据时,休眠生成语法错误的 sql
SQL Error: 907, SQLState: 42000
ORA-00907: missing right parenthesis
如何解决这个错误?
谢谢!
【问题讨论】:
-
好吧,找出正在发出的 SQL。
-
我已经找到它了,但我不知道如何修复它。
-
这里不应该使用
MapKeyColumn注解吗?你能展示物理模型吗?顺便问一下,这个“bug”是否有任何 Jira 问题开放? -
如果出现 oracle 错误,能否请您发布生成的查询?
标签: java oracle hibernate ora-00907