【问题标题】:Can RI Constraint be applied on a Non-Primary Key column?可以将 RI 约束应用于非主键列吗?
【发布时间】:2014-03-27 16:44:11
【问题描述】:

我们有一种情况,我们需要对表的非主键列进行 RI 约束。

场景:

**TABLE_2**     
**Unique_Key    Expression_Key  Data**
 132             ASDF123    qweqwr
 458             PQRS789    abcd

**TABLE_1**     
**Unique_Key    Expression_Key  Expression_Rule**
  XYZ123             ASDF123    Fname = Simon
  ABC123             ASDF123    Lname = Kelso
  QWE123             ASDF123    Age = 89
  FRU123             ASDF123    Gender = M
  RTY3435            PQRS789    Fname = Michael
  TYR134             PQRS789    Lname = John

要求是,如果我得到 132 的值 - 那么我需要评估 expression_id ASDF123 的规则。此表达式 ID 不是 Table_1 的主键,但它对于与该表达式相关的所有行都是唯一的。

我们能否在上述场景中实现 RI 约束,其中 Table_1.Expression_Key = Table_2.Expression_Key 如果插入数据时不满足这个条件,应该会报错。

【问题讨论】:

    标签: oracle constraints referential-integrity


    【解决方案1】:

    外键约束可以引用unique 约束(不必是主键)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-23
      • 2015-11-29
      • 2020-10-25
      • 1970-01-01
      • 2018-11-02
      相关资源
      最近更新 更多