-
Contraintes un peu tordu
...Mais pas tant que ça en fait
Je voudrais imposer un contrainte du type "champ unique pour la table pour toutes les lignes ayant un autre champ de la base ayant la même valeur"
Ouh la je sais pas si c'est clair
En gros j'ai une liste d'enfants
Et je voudrais imposer que les enfants aient des prénoms distincts si ils sont du même père.
Voilà, merci
-
crée un clé de type UNIQUE sur les champs "fils" et "père"
-
Oui c'est vrai c'est con ma question.
C'est parce que j'ai un peu simplifié la chose en fait par rapport au probleme réel.
Imaginons une famille large avec plusieurs pères
Donc on a une table famille avec un champ familleID et un champ pèreID
Bon on a un table père (champ pèreID)
et une table fils qui a un champ pèreID et filsID.
On veut que tous les enfants de la même famille aient des noms distincts et j'aimerais donc imposer ça avec une contrainte !
Voili voilou
-
urgh ! là moi j'abandonne !
personnellement je gère ce genre de contraintes en PHP
-
Ca me paraît faisable en introduisant une redondance dans la table Fils :
Code:
fils(famille_id, pere_id, fils_id)
Et en déclarant une contrainte d'unicité sur (famille_id, fils_id).
Sinon, c'est typiquement le genre de contraintes qui se gèrent dans du code ou avec des triggers...
-
mouais effectivement :aie:
Bah merci !