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

Diagrammes de Classes Discussion :

Table commune à deux tables et mêmes relations


Sujet :

Diagrammes de Classes

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 146
    Points : 64
    Points
    64
    Par défaut Table commune à deux tables et mêmes relations
    Bonjour à tous. Voici mon problème appliqué à un exemple générique pour cause de confidentialité des tables :



    Donc je ne sais pas si c'est un problème ou pas mais on m'a toujours déconseillé de créer des "boucles" dans ma modélisation. De plus, le fait d'avoir une table commune et deux relations identiques m'intrigue aussi.

    Je ne peux pas passer le prénom en attribut de chaque table car nous avons une liste de prénoms donnée qui sera amenée à évoluer par la suite (je sais que ça peut paraître idiot mais encore une fois, c'est un exemple).

    Voilà, s'il y a un moyen de modéliser ça d'une autre façon, je suis preneur.

    Merci d'avance de votre aide

  2. #2
    Candidat au Club
    Homme Profil pro
    Chef de projet technique web
    Inscrit en
    Avril 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet technique web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2004
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    D'un point de vue purement Objet, je pense que ton approche n'est pas bonne, car 2 classes devraient suffire : Personne et Prénom.

    La classe Personne ayant parmi ses données membres (attributs) :
    - un objet Prénom (ce que tu appelles "idPrénom")
    - un objet Personne (ton "idPère")

    Mais je suis moi aussi curieux de découvrir d'autres soluces...

    Keep It Simple

  3. #3
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Je ne parle pas de ton exemple en particulier mais il n'y a pas de problème avec les "boucles" tel que tu le montre car ......ce n'est pas vraiment une boucle

  4. #4
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour à tous,

    Pour rester sur l'exemple de Yeste64, Chtonius à raison : Personne et Prénom devraient suffire.

    Suggestion :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Prenom -0,n---[Prenommer]---1,n- Personne -0,n--+
                                        |           |
                                        |   [Etre le père]
                                        |           |
                                        +------1,1--+
    Personne(IdPersonne, Nom, ...)
    Personne_Pere(#Idpersonne, #IdPersonnePere, ...)
    Prenom(IdPrenom, Prenom, ...)
    Personne_Prenom(#Idpersonne, #IdPrenom, Principal (O/N), ...)

  5. #5
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    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 799
    Points : 34 048
    Points
    34 048
    Billets dans le blog
    14
    Par défaut
    Petit détail Richard :
    Personne_Pere(#Idpersonne, #IdPersonnePere, ...)
    Ceci fait qu'une personne peut avoir plusieurs pères !

    Le bon schéma :

    Personne_Pere(#Idpersonne, #IdPersonnePere, ...)

  6. #6
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour Philppe,

    Dammned !... merci de ta vigilance, Philippe.

Discussions similaires

  1. Fusionner deux tables pour afficher dans une même table
    Par mychan dans le forum DBDesigner
    Réponses: 3
    Dernier message: 12/08/2013, 09h20
  2. Relation entre deux tables de deux dossiers différents
    Par FadeToBlack dans le forum PowerAMC
    Réponses: 6
    Dernier message: 02/05/2012, 10h30
  3. [AC-2007] Deux tables de jointure sur un même ID : comment saisir les données ?
    Par GroFlo dans le forum Modélisation
    Réponses: 1
    Dernier message: 17/01/2012, 18h17
  4. Réponses: 0
    Dernier message: 08/06/2011, 19h55
  5. Vue commune à deux tables
    Par Asmodean dans le forum Langage SQL
    Réponses: 1
    Dernier message: 18/04/2007, 12h09

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