怎么修改外键约束?
大家好,请问 Oracle 中,如何修改外键约束,我用 modify 命令以下脚本修改时出错:
alter table employee
modify constraint emp_dep foreign key(dep_id)
references department(dep_id)
on delete cascade;
是不是要先 drop 外键约束,再重新 add,不能直接修改外键约束的吗?
还有,外键约束就只能关联 delete 的吗?不能关联 update 吗?
我用以下代码是也出错:
alter table employee
add constraint emp_dep foreign key(dep_id)
references department(dep_id)
on update cascade;
----
待复,感谢!
------解决方案--------------------on delete 后面可接cascade 或者set null
on delete cascade表示级联删除,删除记录的时候同时将关联的内容去掉
on delete set null 表示设置为空,删除记录是对关联的内容不做处理,
至于要修改的外键关联,是要重新关联到另外一张表的新的字段,可以先删除外键关联再重新建立新的外键关联。
------解决方案--------------------
好像不支持 update cascade 吧?