जब आपके पास प्राथमिक कुंजी में एकाधिक मान होते हैं, तो आपको इसे एक विदेशी कुंजी के रूप में अलग-अलग संदर्भित करने की आवश्यकता होती है।
मूल रूप से, जब आप कहते हैं
FlightID char (20) REFERENCES Flight(FlightID) ON DELETE CASCADE,
PostgreSQL उस प्राथमिक कुंजी की जांच करता है, जो मौजूद नहीं है (चूंकि उस तालिका की प्राथमिक कुंजी है (flightid, flightdate))।
तो REFERENCES
छोड़ दें उड़ान तालिका का संदर्भ देते समय खंड, और जोड़ें
FOREIGN KEY (FlightID, FlightDate) REFERENCES Flight (FlightID, FlightDate)
जिस तरह से आपके पास कुछ अन्य तालिका परिभाषाएँ हैं।