ขณะลบแถวออกจากตารางพาเรนต์ หากใช้ข้อมูลของแถวนั้นในตารางย่อย MySQL จะแสดงข้อผิดพลาดเนื่องจากความล้มเหลวของข้อจำกัดของ FOREIGN KEY สามารถเข้าใจได้ด้วยตัวอย่างสองตารางชื่อ 'ลูกค้า' และ 'คำสั่งซื้อ' ที่นี่ 'ลูกค้า' คือตารางหลักและ 'คำสั่งซื้อ' คือตารางย่อย เราไม่สามารถลบแถวที่ใช้ใน 'คำสั่งซื้อ' ของตารางย่อยจากตาราง 'ลูกค้า' สามารถแสดงให้เห็นได้โดยการลบค่าออกจากตารางหลักดังนี้ −
mysql> Select * from Customer; +----+--------+ | id | name | +----+--------+ | 1 | Gaurav | | 2 | Raman | | 3 | Harshit| | 4 | Aarav | +----+--------+ 4 rows in set (0.00 sec) mysql> Select * from orders; +----------+----------+------+ | order_id | product | id | +----------+----------+------+ | 100 | Notebook | 1 | | 110 | Pen | 1 | | 120 | Book | 2 | | 130 | Charts | 2 | +----------+----------+------+ 4 rows in set (0.00 sec)
ทีนี้ สมมติว่าถ้าเราจะพยายามลบแถวที่มี id =1 หรือ id =2 (เพราะทั้งสองแถวที่ใช้ในตารางย่อย) จาก 'ลูกค้า' ตารางหลัก MySQL จะแสดงข้อผิดพลาดดังต่อไปนี้เนื่องจากความล้มเหลวของต่างประเทศ ข้อจำกัดที่สำคัญ
mysql> Delete from customer where id = 1; ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails (`query`.`orders`, CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`id`)REFERENCES `customer` (`id`)) mysql> Delete from customer where id = 2; ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails (`query`.`orders`, CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`id`)REFERENCES `customer` (`id`))