我在mysql(104个表)上有这个大数据库,几乎每个表都有一个指向单个表的FK,就像主表一样。
存在巨大的关系网络,当我需要从“主”表中删除记录时,由于关系,会出现很多错误。所有这些都被设置为删除时“什么都不做”,所以我的问题是,实际上,更改它们(关系)在级联上删除而不是“手动”删除所有受影响的表上的每个记录是多么安全?
我是usyng MySql,最后一个版本(不要精确地记住哪个版本),如果有效,请使用PHP 5.2和codeigniter。
非常感谢
答案 0 :(得分:1)
这完全是关于商业规则。
如果你的商业规则中有级联删除应该发生,我不明白为什么你手工编程?
当然,手动编程时你可以内置额外的验证,但如果你不是,那么手工删除只会让你更容易出错。
首先,当删除'by built in cascade'时,交易是免费的,你不会冒险离开孤儿。