Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/02/2011, 11h55   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2010
Messages : 85
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 85
Points : 14
Points : 14
Par défaut Traduire l'héritage d'un MCD

Bonjour,

J'aimerais savoir comment on réalise l'héritage qui peut apparaître sur un MCD.

Jusqu'alors j'utilise une clé étrangère dans les tables filles qui réfère à une entrée dans une table mère. Mais ce n'est pas suffisant. Je veux éviter qu'il soit possible que deux filles réfèrent à une même entrée dans la table mère.

Je cherche donc à ajouter une contrainte UNIQUE sur les colonnes de deux tables (les tables filles).
C'est possible ?

Merci.
Agoudard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2011, 15h29   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 990
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 990
Points : 18 241
Points : 18 241
Envoyer un message via MSN à CinePhil
Non ce n'est pas possible. Par contre, tu peux mettre une contrainte CHECK... si ton SGBD la supporte, c'est à dire notamment si tu utilises un SGBD meilleur que MySQL.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/02/2011, 00h26   #3
Expert Confirmé Sénior

 
Avatar de fsmrel
 
Spécialiste en bases de données
Inscription : septembre 2006
Messages : 2 882
Détails du profil
Informations professionnelles :
Activité : Spécialiste en bases de données
Secteur : Conseil

Informations forums :
Inscription : septembre 2006
Messages : 2 882
Points : 5 115
Points : 5 115
Citation:
Envoyé par Agoudard Voir le message
Bonjour,

J'aimerais savoir comment on réalise l'héritage qui peut apparaître sur un MCD. [...] Je veux éviter qu'il soit possible que deux filles réfèrent à une même entrée dans la table mère.
Il s’agit d’une contrainte d’exclusion. Je vous renvoie à la réponse faite à Miko95, pour qui l’exclusion ne concernait pas deux mais, qui peut le plus peut le moins, trois types d’entités (dans votre cas, les UNION ALL disparaissent). SGBD : SQL Server.
__________________
_
Faites simple, mais pas plus simple ! (A. Einstein)
E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
=> La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

__________________

Bases de données relationnelles et normalisation : de la première à la sixième forme normale (Bonne lecture !)
fsmrel est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h40.


 
 
 
 
Partenaires

Hébergement Web