主キーに複数の値がある場合は、外部キーとして別の方法で参照する必要があります。
基本的に、あなたが言うとき
FlightID char (20) REFERENCES Flight(FlightID) ON DELETE CASCADE,
PostgreSQLは、存在しないその主キーをチェックします(そのテーブルの主キーは(flightid、flightdate)であるため)。
したがって、REFERENCES
を削除してください フライトテーブルを参照するときの句、および追加
FOREIGN KEY (FlightID, FlightDate) REFERENCES Flight (FlightID, FlightDate)
他のいくつかのテーブル定義と同じように。