我必须修改现有约束,以便级联更新和删除。 为此,我首先删除了约束,并计划添加它(通过ALTER TABLE),但这失败了。
当我提交下面的查询时,它会给我一个错误' ORA-01735: invalid ALTER TABLE option
':
ALTER TABLE
PARAM
ADD CONSTRAINT
FK_PARAM_PORTLET FOREIGN KEY (PORTLETID)
REFERENCES PORTLET(ID)
ON DELETE CASCADE ON UPDATE CASCADE;
知道它可能是什么?我忽略了什么吗?
答案 0 :(得分:2)
Oracle在外键中不支持ON UPDATE CASCADE
。
请查看此问题以获取提示:How to create a Foreign Key with "ON UPDATE CASCADE" on Oracle?
答案 1 :(得分:0)
Oracle不支持UPDATE CASCADE。您需要通过触发器来管理它。
参照完整性约束可以指定要执行的特定操作 如果引用,则对子表中的从属行执行 父键值已修改。支持的参考行动 Oracle的FOREIGN KEY完整性约束是UPDATE和DELETE NO ACTION和DELETE CASCADE。