กรณีวิเคราะห์ฐานข้อมูล c6c3a0c72dd63f72df42e7231adbf6c91ad9e11dfc965d580df23fd72397f46a: เมื่อออกแบบหรือแก้ไขระบบ ควรคำนึงถึงความถูกต้อง ความปลอดภัย และผลกระทบ ข้อใดถูกต้องเกี่ยวกับ ในฐานข้อมูลตารางสินค้า มีสถานการณ์ที่ต้องลบสินค้าทั้งหมดของบริษัทผู้จัดจำหน่าย แต่การลบสินค้านี้อาจทำให้การอ้างอิงในตารางคำสั่งซื้อเสียหาย ควรสร้างข้อจำกัด (Constraint) ใดต่อไปนี้?
กForeign Key Constraint ที่มี ON DELETE RESTRICT เพื่อป้องกันการลบสินค้าหากยังมีอ้างอิงอยู่
ขCheck Constraint เพื่อตรวจสอบว่าสินค้าเป็นของบริษัทที่ถูกต้อง
คForeign Key Constraint ที่มี ON DELETE CASCADE เพื่อให้ลบสินค้าและลบอัตโนมัติรายการที่เกี่ยวข้องในคำสั่งซื้อ
งPrimary Key Constraint เพื่อบังคับให้ห้ามลบข้อมูลทั่วไป
เฉลยอธิบาย
ON DELETE RESTRICT เป็นข้อจำกัดที่ป้องกันการลบข้อมูลหากยังมีบันทึกอื่นที่อ้างอิงอยู่ ซึ่งเหมาะสำหรับกรณีที่ไม่ต้องการที่จะลบข้อมูลเก่าออก ตัวเลือก A (CASCADE) ใช้เมื่อต้องการลบข้อมูลที่เกี่ยวข้องทั้งหมด ซึ่งอาจไม่เหมาะสำหรับธุรกิจเพราะจะหายประวัติการสั่งซื้อ ตัวเลือก C ไม่เกี่ยวข้องกับการป้องกันการลบ ตัวเลือก D ไม่ใช่วิธีการที่เหมาะสมสำหรับสถานการณ์นี้