我从关系数据库进行了一次考试。 我有一个问题(波兰语翻译),找不到任何线索可以回答: “存在外键时数据删除有哪些问题(三个)? 有哪些解决方案可用?” RD是我的致命弱点:(
答案 0 :(得分:1)
有两种情况:
解决方案:请勿使用ON DELETE CASCADE
。
解决方案:使用ON DELETE CASCADE
或通过动态SQL删除(首先读取系统表,这样您便知道树,然后从下往上删除)。
答案 1 :(得分:0)
在存在外键的情况下删除数据有哪些问题(三个)?
我不会称它们为问题,但要考虑的事情:
1)TRUNCATE TABLE
在存在FK的情况下不起作用(SQL Server)
2)您必须先从引用表中删除(如果未定义CASCADE选项)
3)如果不存在索引,删除操作可能会比较慢(在大表上检查引用完整性可能确实很慢)