เปิดใช้งาน (Enable) Foreign Key
หลังปิดด้วย NOCHECK ใช้ CHECK CONSTRAINT เพื่อเปิดบังคับ FK กลับ (จะตรวจสอบข้อมูลที่มีอยู่ทันที)
รูปแบบคำสั่ง
ALTER TABLE table_name
CHECK CONSTRAINT fk_name;
ตัวอย่าง
-- เปิดใช้งาน FK ที่เคยปิด
ALTER TABLE hangtonkho
CHECK CONSTRAINT fk_htk_id_sanpham;
หมายเหตุ: หากข้อมูลในตารางมีค่า FK ที่ไม่มีใน Parent Table คำสั่ง CHECK จะล้มเหลว (error) ต้องแก้ไขข้อมูลก่อน
เคล็ดลับ: ตรวจสอบข้อมูลก่อน enable ด้วย query:
SELECT * FROM hangtonkho h
WHERE NOT EXISTS (SELECT 1 FROM sanpham s WHERE s.id_sanpham = h.id_sanpham);