IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Traduire l'héritage d'un MCD


Sujet :

Langage SQL

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 96
    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.

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    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 : 16 818
    Billets dans le blog
    14
    Par défaut
    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 Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « 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 la suite Linux Mageïa !

  3. #3
    Expert éminent
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 218
    Billets dans le blog
    16
    Par défaut
    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.

Discussions similaires

  1. [MCD] l'héritage sur le MCD puis le MLD
    Par wikiele dans le forum Schéma
    Réponses: 7
    Dernier message: 16/05/2011, 21h01
  2. [MCD] Héritage de prestations
    Par pigpen dans le forum Schéma
    Réponses: 6
    Dernier message: 04/04/2007, 12h01
  3. Transformation Héritage (MCD-MLD)
    Par ngwiamfr dans le forum Schéma
    Réponses: 4
    Dernier message: 07/03/2007, 00h13
  4. [MCD]Typage ou Héritage ?
    Par campesinos dans le forum Schéma
    Réponses: 6
    Dernier message: 23/01/2007, 21h26
  5. [Entité-Association] Traduire l'héritage conceptuel en script BDD
    Par MrEddy dans le forum Schéma
    Réponses: 2
    Dernier message: 16/03/2004, 15h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo