这两种方法,个人建议的方法,你选择了一个简单方便的方法
:触发的解决方案(下面的代码可以不,直接复制)
创建或替换触发delete_dept
删除前在DEPT
每一行
开始
删除从EMP
=
DEPT_NO:oldDEPT_NO;
删除从POS
DEPT_NO
=
oldDEPT_NO;
到底;
/
方法二:外键设置要达到的目的级联删除,具体实现如下:
a)首先查询EMP表POS国外键表名(如果你知道这一步中的外键的名称可省略)
选择和constraint_name,TABLE_NAME从USER_CONSTRAINTS其中CONSTRAINT_TYPE
='R'和TABLE_NAME('EMP','POS');
BR
p>二)在桌子上,删除EMP表的和POS外键的重新确立,允许级联删除外键模式
ALTER
TABLE
EMP下降约束外键名称;
ALTER
TABLE
POS下降约束外键名称
ALTER
TABLE
EMP加约束外键名称外键引用DEPT(DEPT_NO)(DEPT_NO)ON
DELETE
CASCADE;
ALTER
TABLE
POS添加约束外键名称外键(DEPT_NO
)提述DEPT(DEPT_NO)的ON
DELETE
CASCADE;
---
多了,我希望你的帮助。
不在了。pk有效,fk无效。重新建立外键就可以了。
在数据库open阶段,rvwr进程需要加载闪回日志文件,由于找不到所以无法正常启动,而在关闭flashback后,rvwr进程被关闭,相应的闪回文件也被删除。
以上就是关于oracle数据库设置外键问题全部的内容,包括:oracle数据库设置外键问题、oracle中有外键的话,表被删了,再flashback,外键还在吗、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)