示例,如下表机场:
id
name
country_id (foreign key, ON DELETE will set it to null)
然后:
是否所有机场的country_id都将设置为null(因为外键检查已关闭)?
编辑:我已经尝试过了,country_id未设置为null。我的问题基本上是在关闭外键检查的情况下是否完全考虑ON DELETE
。
答案 0 :(得分:2)
禁用外键检查时,您有机会将数据库置于不一致状态。
也就是说,您可以强制外键列中的值引用已消失的值(在您的情况下甚至是整个表)。
要避免这样做。
类似地,您是否知道如果电工用金属工具接触带电的电线,他们就能自己电切?他们试图不这样做。