【发布时间】:2011-06-08 06:37:17
【问题描述】:
我有一个表,其中父对象具有可选的多对一关系。问题是该表设置为将 fkey 列默认为 0。
选择时,使用 fetch="join" 等 - fkey 上的默认值 0 被用于反复尝试从另一个表中选择 ID 0。当然这不存在,但是如何告诉 Hibernate 将值 0 视为与 NULL 相同——在获取不存在的关系时不要循环 20 多次?
<many-to-one name="device" lazy="false" class="Device" not-null="true" access="field" cascade="none" not-found="ignore">
<column name="DEVICEID" default="0" not-null="false"/>
【问题讨论】:
-
为什么默认值是0而不是NULL?此外,FK 必须为 NULL 或目标表中的有效 ID。该列实际上是否有 FK 常量?
标签: java hibernate orm many-to-one