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

PostgreSQL-Fremdschlüssel nicht vorhanden, Vererbungsproblem?

Sie können dies umgehen, indem Sie die zusätzliche Tabelle individual_pks (individual_pk integer primary key) verwenden mit allen Primärschlüsseln von Eltern und Kind, die mithilfe von Triggern verwaltet werden (sehr einfach – einfügen in individual_pks beim Einfügen, daraus löschen beim Löschen, aktualisieren beim Aktualisieren, wenn es individual_pk ändert ).

Dann verweisen Sie mit Fremdschlüsseln auf diese zusätzliche Tabelle anstelle eines untergeordneten Elements. Es wird einige kleine Leistungseinbußen geben, aber nur beim Hinzufügen/Löschen von Zeilen.

Oder vergessen Sie die Vererbung und machen Sie es auf die alte Art - einfach eine Tabelle mit einigen nullbaren Spalten.