【问题标题】:How to create two-column unique key constrain with HBM mapping?如何使用 HBM 映射创建两列唯一键约束?
【发布时间】:2011-05-25 07:42:11
【问题描述】:

我有一个休眠映射:

属性>

我希望 hibernate 会为此映射在数据库上创建唯一约束。然而,没有发生类似的事情。

我做错了什么?

【问题讨论】:

    标签: java hibernate hbm2ddl


    【解决方案1】:

    看起来你没有做错任何事。我们在我们的项目中也是这样做的,而且效果很好。 我曾经想过有同样的问题,因为我在我们的 oracle 数据库中找不到约束,因为我认为指定的唯一键属性值(在你的情况下为“lrt_bps_bpr_acs_uk”)在数据库中用作约束名。但事实并非如此(至少对于 oracle DB)。

    【讨论】:

      【解决方案2】:

      Hibernate 生成的实际 DDL 是什么?如果删除唯一键参数,DDL 会是什么?什么是休眠版本?

      从文档看来,您做得正确: http://docs.jboss.org/hibernate/core/3.3/reference/en/html/mapping.html#mapping-declaration-properties

      【讨论】:

        【解决方案3】:

        不要在属性元素中指定 name="lrt_bps_bpr_acs_uk" unique="true"。它会自动接受它并使用唯一键应用约束

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2023-02-26
          • 1970-01-01
          • 2015-09-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-01-16
          相关资源
          最近更新 更多