ระบบบันทึกคำสั่งซื้อที่อ้างรหัสสินค้าซึ่งไม่มีอยู่จริง ควรใช้กลไกใดรักษาความสัมพันธ์?
กกำหนด foreign key จากคำสั่งซื้อไปยังคีย์ของสินค้าที่มีอยู่
ขใช้ exclusion constraint เพื่อห้ามคู่แถวที่ช่วงเวลาซ้อนทับตามตัวดำเนินการกำหนด
คกำหนด CHECK ให้ค่าราคาผ่านนิพจน์ที่ยอมรับเฉพาะค่าถูกต้อง
งกำหนด NOT NULL ที่คอลัมน์วันที่ซึ่งห้ามขาดค่า
เฉลยอธิบาย
PostgreSQL 18 Documentation: Constraints Section 5.5.5 Foreign Keys รองรับแนวทางว่า กำหนด foreign key จากคำสั่งซื้อไปยังคีย์ของสินค้าที่มีอยู่ จึงแก้เงื่อนไขหลักในโจทย์ได้ตรงกว่าแนวทางของประเด็นอื่น