为什么在更新级联上使用时出现错误?

时间:2019-01-25 07:18:23

标签: sql oracle

我必须在更新级联上为外键+添加一个约束,但是显示错误,为什么?

SQL> alter table affaire_cassation
   2  add constraint key_fk_num_p foreign key(num_aff_a) references 
    affaire_appel(num_aff)
    3  on update cascade;

在更新级联上    * ERREURÓla ligne 3: ORA-00905:缺少mot-clÚ

1 个答案:

答案 0 :(得分:2)

oracle中没有ON UPDATE CASCADE

您可能希望查看deferrable constraints来推迟外键检查,直到提交,更新父级,更新子级然后提交。

ALTER TABLE affaire_cassation
ADD CONSTRAINT key_fk_num_p 
FOREIGN KEY(num_aff_a) 
REFERENCES affaire_appel(num_aff)
DEFERRABLE INITIALLY DEFERRED;

您还可以寻找DEFERRABLE INITIALLY IMMEDIATE,以便在需要时推迟按需约束。


ALTER SESSION SET CONSTRAINTS = DEFERRED;一起使用