สมาชิกแต่ละคนต้องใช้อีเมลไม่ซ้ำ แต่ยังอนุญาตให้มีรหัสสมาชิกหลายรูปแบบ ควรบังคับด้วยอะไร?
กกำหนด primary key ที่ระบุแต่ละแถวได้อย่างไม่ซ้ำและไม่เป็น null
ขกำหนด foreign key จากคำสั่งซื้อไปยังคีย์ของสินค้าที่มีอยู่
คกำหนด UNIQUE ที่คอลัมน์อีเมลโดยไม่เปลี่ยนคีย์หลักของตาราง
งใช้ exclusion constraint เพื่อห้ามคู่แถวที่ช่วงเวลาซ้อนทับตามตัวดำเนินการกำหนด
เฉลยอธิบาย
PostgreSQL 18 Documentation: Constraints Section 5.5.3 Unique Constraints รองรับแนวทางว่า กำหนด UNIQUE ที่คอลัมน์อีเมลโดยไม่เปลี่ยนคีย์หลักของตาราง จึงแก้เงื่อนไขหลักในโจทย์ได้ตรงกว่าแนวทางของประเด็นอื่น