Lors de la création des tables d’une base de données il se peut que la structure d’une table soit dépendante d’une autre.
Un exemple :
– TableA (colA i, colB i, colC i)
– TableB (colA i, colB i, colC i, colD i)
Avec le mot clé ‘like’ on peut créer TableB comme ceci :
create table TableB (like TableA, colD integer);
TableB est indépendante de TableA, si cette dernière est modifiée la table TableB ne sera pas affectée.
Pour maintenir ce lien on peut utiliser l’héritage, en créant la table TableB comme ceci :
create table TableB (colD integer) inherits (TableA);
Les données ajoutées dans la TableB peuvent être récupérées en interrogeant la TableA. De plus si la structure de la TableA est modifiée, ces modifications seront appliquées aux tables qui ont hérités de la TableA.
Voir la syntaxe de create table sur la doc fr de PostgreSQL