-
heritage des contraintes
Salut,
j'ai voulu mettre en place un système d'héritage entre trois tables (2 filles héritant de la mère), et j'ai remarqué que l'on herite pas de la contrainte clé unique.
y'a t'il une commande SQL pour heriter des contraintes ?
car en passant pas les classes (ou plutot tables) filles, ont peut, via heritage qui remonte dans sa hiérarchie inclure des doublons dans la table mère sur la colonne Identifiant qui comporte une contrainte clé unique.
euh... je suis pas sur de m'être bien exprimé la...
-
Hello,
Non effectivement j'ai pas tout compris. Mais concernant l'héritage, tu peux utiliser le inherits de la syntaxe de Postgres. Les attributs, clé,... sont gérer automatiquement. Par contre tu ne peux pas retrouve un enregistrement dans tes deux enfants. Fait quelques tables et test cette clause inherits... tu verras c'est pratique.
Si tu travailles avec un soft de conception, normalement, il devrait te gérer cela lui-même. Sinon à toi de le faire à la main.
A+
-
voila ce que je voulai dire :
j'ai une classe mere par exemple
CREATE TABLE Villes (
IdVilles
autres attributs
);
avec une clé unique sur IdVilles
et je crée une classe fille capital, qui est un elle meme une ville donc :
CREATE TABLE Capitales (
attributs
) INHERITS(Villes);
evidement cela fonctionne bien, je retrouve IdVilles dans ma table capitale. Seulement, la contrainte fonctionne que quand j'insert sur la table Villes, la pas de problemes, impossible de créer des doublons, mais par contre je peut en créer sur Capitale.
Je voulai juste savoir comment heriter de cette contrainte, etant donné que je cherche depuis un petit moment en vain ...
-
Salut,
Désolé mais je ne peux pas faire de tests maintenant, je ne suis pas au bureau! Je t'aiderai volontier lundi.
A+