PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Fremdschlüssel in der ersten Tabelle

Erstellen Sie entweder zuerst die zweite Tabelle. Oder verwenden Sie alter table . Das heißt, erstellen Sie die erste Tabelle ohne die Referenz und tun Sie dann:

alter table table1 add constraint fk_table1_team
    foreign key (team_id) REFERENCES table2(team_id);

Die Deklaration für table1 wäre:

CREATE TABLE table1 (   
    name_id INT NOT NULL,
    team_id INT, 
    PRIMARY KEY(name_id)
);

Die Referenz zwischen den Tabellen sollte auf dem Primärschlüssel stehen und schon gar nicht auf einer Zeichenspalte, wenn eine Ganzzahl vorhanden ist.