我有两个一对一关系的表(并且只有一方强制关系)。如下:
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);
所以问题是当在RLP中插入记录时,common_code
或spec_code
中的至少一个必须具有值。
是否可以使用约束来强制执行此约束,或者唯一的解决方案是否具有触发器?
答案 0 :(得分:0)
似乎没有办法在两个表上创建约束,唯一的解决方案是创建一个触发器以在期望的情况下抛出异常。