PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Problemi di vincoli PostgreSQL

Quando hai più valori in una chiave primaria, devi fare riferimento ad essa in modo diverso come chiave esterna.

Fondamentalmente, quando dici

FlightID char (20) REFERENCES Flight(FlightID) ON DELETE CASCADE,

PostgreSQL cerca quella chiave primaria, che non esiste (poiché la chiave primaria su quella tabella è (flightid, flightdate)).

Quindi rilascia i REFERENCES clausole quando si fa riferimento alla tabella di volo e aggiungere

FOREIGN KEY (FlightID, FlightDate) REFERENCES Flight (FlightID, FlightDate)

Nel modo in cui hai in alcune delle altre definizioni di tabella.