Cannot delete or update a parent row: a foreign key constraint fails....


在操作”小弟“这张表时候报错

想在“小弟”上面加入数据或者更新数据,就要听老大的,

这句话后面跟着的表就是“老大”,必须老大有数据索引,“小弟“才可以加入或者更新

查看“小弟”表的外键,会发现有对“老大”表的外键索引。

 

举例

在要删除或者滞空warehouse_picked_record中logistic_order_detail中的字段会报错

 Cannot add or update a child row: a foreign key constraint fails (`susliks`.`warehouse_picked_record`, CONSTRAINT `fk_whip_ref_logistics_detail` FOREIGN KEY (`logisticsorder_detail_id`) REFERENCES `logistics_order_detail` (`order_detail_id`) ON DELETE NO ACT)

 

针对外键数据库默认是NO ACTION,可以显示列出,CASCADE是级联操作,即当删除父行数据时候,相关联的子行数据也被删除,更新与删除功能相同。

现在如果先删除对应的logistcs_order_detail中的数据,就会发现,对应的warehouse_picked_record也会被自动删除

如果变成no action则要手动删除warehouse_picked_record ,不受logistics_order_detail约束


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM