PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Clé étrangère PostgreSQL inexistante, problème d'héritage ?

Vous pouvez contourner ce problème en utilisant la table supplémentaire individual_pks (individual_pk integer primary key) avec toutes les clés primaires du parent et de l'enfant, qui seront maintenues à l'aide de déclencheurs (très simple — insérer dans individual_pks lors de l'insertion, supprimez-le lors de la suppression, mettez-le à jour lors de la mise à jour, s'il change individual_pk ).

Ensuite, vous pointez des clés étrangères vers cette table supplémentaire au lieu d'un enfant. Il y aura un petit impact sur les performances, mais uniquement lors de l'ajout/de la suppression de lignes.

Ou oubliez l'héritage et faites-le à l'ancienne - simplement une table avec des colonnes nullables.