代码之家  ›  专栏  ›  技术社区  ›  Amir Pashazadeh

检查Oracle中两个表的约束

  •  0
  • Amir Pashazadeh  · 技术社区  · 7 年前

    我有两个具有一对一关系的表(并且关系仅在一侧是强制的)。具体如下:

    create table PRS (
      id number(18) not null,
      common_code varchar2(10),
      constraint pk_prs primary key (id));
    
    create table RLP {
      id number(18),
      spec_code varchar2(20),
      constraint pk_rlp primary key (id),
      constraint fk_rlp_prs foreign key (id) references prs(id) on delete cascade);
    

    common_code spec_code 必须有价值。

    是否可以使用约束强制执行此约束,或者唯一的解决方案是使用触发器?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Amir Pashazadeh    7 年前

    似乎没有办法在两个表上创建约束,唯一的解决方案是创建一个触发器,在所需的情况下引发异常。