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

Schéma Discussion :

Quand dois-je utiliser une association porteuse dans un MCD ?


Sujet :

Schéma

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2007
    Messages : 19
    Points : 8
    Points
    8
    Par défaut Quand dois-je utiliser une association porteuse dans un MCD ?
    Bonjour,

    J'apprends actuellement Merise et je me pose une question :
    A quel moment doit-on utiliser un association porteuse ?
    Je n'arrive pas à visualiser ce que cela donne concrètement.

    Pouvez-vous m'aider svp ?

    Merci d'avance.

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2007
    Messages : 19
    Points : 8
    Points
    8
    Par défaut
    Par exemple, avec l'entité CLIENT qui a comme propriétés NumClt (clé primaire), NomClt...et l'entité ARTICLE qui a comme propriétés NumArt (clé primaire), NomArt...

    En association, je mets commander (la patte CLIENT vers l'association est 1, N et la patte article vers Commander est 0,N)

    Quelle est la différence entre le fait de mettre QtéCommandé en association porteuse de commander ou de mettre QtéCommandé en propriété de ARTICLE ?

    J'ai vraiment du mal a voir la différence. Qu'est-ce que cela va changer ?

  3. #3
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    septembre 2006
    Messages
    7 588
    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 : 7 588
    Points : 29 030
    Points
    29 030
    Billets dans le blog
    16
    Par défaut
    Bonsoir,

    Si vous définissez QtéCommandé comme propriété de ARTICLE, cela signifie qu'une certaine quantité d'un article a été commandée, au moins une fois et au plus une fois. Par qui ? On ne sait pas.

    L'association COMMANDER vous permet d'établir un lien entre un client et un article. Si donc l'association COMMANDER est porteuse de la propriété QtéCommandé, alors on sait qu'un client a commandé tel article, selon une certaine quantité.

    Au fait, le concept de clé primaire relève de SQL. En Merise on utilise celui d'identifiant.

    Bon courage pour la suite.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, 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
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pout ça.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2007
    Messages : 19
    Points : 8
    Points
    8
    Par défaut
    Merci de votre réponse. Le problème est que si je mets QtéCommandé en association porteuse, un client ne pourra pas commander 2 fois un article car au niveau logique l'association deviendra une relation contenant les identifiants des entités mère. Et il ne peut pas y avoir 2 fois la même valeur.

    Vous confirmez mes propos ? Si oui, comment puis-je faire en sorte qu'un client puisse commander plusieurs fois le même article ?

    Merci d'avance.

  5. #5
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    septembre 2006
    Messages
    7 588
    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 : 7 588
    Points : 29 030
    Points
    29 030
    Billets dans le blog
    16
    Par défaut
    Je confirme vos propos.

    Dans un premier temps, vous pouvez déjà définir une entité-type Commande rattachée à Client (un client peut passer N commandes, une commande est passée par au moins et au plus un client).

    Dans un 2e temps, vous définissez une entité-type LigneCommande, puisqu'une commande est composée de lignes de commande (une commande est composée de 1 à N lignes de commande et une ligne de commande appartient à une et une seule commande).

    Ensuite, vous associez LigneCommande et Article. La propriété QtéCommandée est une propriété de LigneCommande. Une ligne de commande fait référence à au moins et au plus un article et un article peut être référencé par N lignes de commande.

    Vous pouvez aussi définir LigneCommande comme association-type entre Commande et Article, c'est peut-être plus "conceptuel", mais c'est moins souple, par exemple quant au système d'identification.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, 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
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pout ça.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2007
    Messages : 19
    Points : 8
    Points
    8
    Par défaut
    Je vous remercie beaucoup de m'avoir aider avec mon problème.

    Au revoir et merci encore.

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    septembre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : septembre 2021
    Messages : 4
    Points : 5
    Points
    5
    Par défaut MCD
    Exemple typique
    A -----> B
    Automatiquement A c'est le fils, et B c'est le père. Pourquoi ?
    Parce A dépend de B, et B détermine A.
    Comment ?
    Celui qui dépend de l'autre, on l'appelle fils et celui qui détermine l'autre, on l'appelle père.

    Pour l'association porteuse
    On parle de lui, lorsque deux ou plusieurs entités déterminent celle-ci.

    Voilà la procédure très facile.
    Par : kausagermain@gmail.com

  8. #8
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    mars 2010
    Messages
    8 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : mars 2010
    Messages : 8 612
    Points : 31 260
    Points
    31 260
    Billets dans le blog
    2
    Par défaut
    Bonjour Germain Kausa et bienvenue dans ce forum.

    Le sujet date de 2007, il n'est donc pas utile de rebondir sur cette discussion...

    De plus, s'il s'agit de symboliser une dépendance fonctionnelle, alors A-->B signifie que A détermine B et non pas l'inverse.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/07/2007, 10h07
  2. [JAR][POLICE] Utiliser une police ttf dans un fichier jar
    Par Doc.Fusion dans le forum Général Java
    Réponses: 3
    Dernier message: 26/01/2005, 12h23
  3. [jre]utiliser une autre vm dans eclipse
    Par champion dans le forum Eclipse Java
    Réponses: 10
    Dernier message: 02/07/2004, 11h21
  4. Réponses: 2
    Dernier message: 24/06/2003, 20h31

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