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

Access Discussion :

Relation meme table


Sujet :

Access

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 124
    Points : 81
    Points
    81
    Par défaut Relation meme table
    Bonsoir,

    Pour le projet d'un cours,
    Je suis en train de crée un MCD à partir de tables déja donné.


    J'ai 6 tables

    Situation_FAM(ID_FAM, LIB_FAM)
    Civilité(ID_CIVILITE, LIBC_CIV,LIBL_CIV)
    Personne(ID_PERSO, ID_CIVILITE*, ID_FAMILLE*, DT_NAISSANCE,DT_DECES)
    Cotisation_Salarial(ID_COT_SAL, ID_Perso*, ...)
    TYPE_RELATION(ID_TP_REL, LIB_TP_REL)
    RELATION(ID_PERSO1, IDPERSO2, ID_TP_REL*, DEB_REL, FIN_REL)

    Pour les 4 premières tables, aucun problème pour en faire un MCD.
    Mais mon probleme est pour :

    Personne, RELATION et TYPE_RELATION

    Je ne sais pas comment modéliser dans Access la table relation et personne car les 2 sont liées mais je ne sais pas comment le faire. De plus je n'arrive pas à mettre de clé primaire sur ID_Perso1 et ID_Perso2 de la table Relation.

    Nom : dessin.png
Affichages : 608
Taille : 8,0 Ko

    Merci de me dire si mon dessin est pas trop mal et les cardinalités associées et si vous savez comment puis-je faire pour que access accepte de mettre les 2 clés primaires sur RELATION



    J'espère que mon explication est clair

    Merci
    Dumbl

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    Jette un œil sur le chapitre III de ce tutoriel ; http://claudeleloup.developpez.com/t...rmulaire/#LIII
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Expert éminent
    Avatar de jimbolion
    Homme Profil pro
    Moulticien
    Inscrit en
    Janvier 2013
    Messages
    3 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Moulticien
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3 150
    Points : 7 001
    Points
    7 001
    Billets dans le blog
    2
    Par défaut
    dumbl,

    Oui explication claire puisque je peux y répondre :

    Je ne sais pas comment modéliser dans Access la table relation et personne car les 2 sont liées mais je ne sais pas comment le faire. De plus je n'arrive pas à mettre de clé primaire sur ID_Perso1 et ID_Perso2 de la table Relation.
    En glissant dans l'outil base de données et relation (ruban) une copie de la table Personne Cette copie ou plutôt Alias permet simplement d'affecter les relations et les règles d'intégrités associées. Il s'agit dans l'interprétation du modèle de la même table.

    Nom : Relations.JPG
Affichages : 754
Taille : 46,1 Ko

    Merci de me dire si mon dessin est pas trop mal et les cardinalités associées et si vous savez comment puis-je faire pour que access accepte de mettre les 2 clés primaires sur RELATION
    Il ne s'agit pas de deux clés primaires mais d'une clé primaire composite basé sur deux champs. Mais attention construire une clé primaire de cette façon implique que la valeur des deux champs soient non null (qu'advient t-il donc pour une personne non mariée ?).

    Donc si on admet que les valeurs des deux champs ne seront jamais null, la constitution d'une clé primaire composite s'effectue de la manière suivante :

    Nom : PrimaryKey.JPG
Affichages : 577
Taille : 95,3 Ko

    Moi je privilégierai plutôt une modification de l'entité Relations de cette manière (afin de gérer les personnes célibataires)

    RELATION(ID_RELATION, ID_PERSO1, IDPERSO2, ID_TP_REL*, DEB_REL, FIN_REL)

    La clé primaire serait ID_RELATION et une clé composite calqué sur ID_Perso1 (non null) et ID_Perso2 (acceptant les valeurs nulles).

    Nom : RelationsModifs.JPG
Affichages : 553
Taille : 170,3 Ko


    La base exemple ayant servie à la réponse :


    dumbl.zip

    Bon courage pour la suite

    JimBoLion
    N'oubliez pas le Tag si la réponse donnée vous a été utile et pour une réponse pertinente.
    Retrouvez-moi sur le chat en salon base de données

  4. #4
    Expert éminent
    Avatar de jimbolion
    Homme Profil pro
    Moulticien
    Inscrit en
    Janvier 2013
    Messages
    3 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Moulticien
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3 150
    Points : 7 001
    Points
    7 001
    Billets dans le blog
    2
    Par défaut
    Claude re,

    J'avais pas vu ta réponse, car entre temps j'étais en train de valider ma réflexion

    Cela dit, j'ai fait une réponse à la Claude , et je vois que tu arrives à faire ton auto-promo

    JM
    N'oubliez pas le Tag si la réponse donnée vous a été utile et pour une réponse pertinente.
    Retrouvez-moi sur le chat en salon base de données

  5. #5
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 124
    Points : 81
    Points
    81
    Par défaut
    Merci Jim!

    Je test ça tout de suite et je te redis.
    Pour la table relation je ne peux pas créer d'ID tout simplement car les tables existent déja et que je crée uniquement le modèle MCD, MLD de ces tables sans les modifiés. Et dans la table relation il n'y a pas de personne célibataire, on peut uniquement avoir des personnes mariées, père/fils concubin, ex-concubin

    Cordialement
    Dumbl

    A+

  6. #6
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 124
    Points : 81
    Points
    81
    Par défaut
    Bon JimBoLion c'est parfait pour faire les relations, merci pour l'astuce de (doubler/aliasser) sa table.

    Par contre j'ai toujours le problème de clé primaire.
    voici le message d'erreur :

    Nom : problemeAccessDoublons.PNG
Affichages : 573
Taille : 145,3 Ko

    Merci
    Dumbl

  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 124
    Points : 81
    Points
    81
    Par défaut
    Voila le MCD que je crée : Nom : MCD_Actuariat.PNG
Affichages : 570
Taille : 95,9 Ko
    Et-il correct pour que je le transforme en MLD comme je l'ai défini dans le premier post.

    TY
    Dumbl

  8. #8
    Expert éminent
    Avatar de jimbolion
    Homme Profil pro
    Moulticien
    Inscrit en
    Janvier 2013
    Messages
    3 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Moulticien
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3 150
    Points : 7 001
    Points
    7 001
    Billets dans le blog
    2
    Par défaut
    dumbl,

    Je viens de lire tes nombreux messages. Et le message d'erreur signifie simplement que tu as des déjà des valeurs insérées dans ta table et qui t'empêchent tout simplement de valider ta clé (car ces valeurs sont incompatibles avec les spécifications de contraintes).

    Solution : Supprimer les lignes de ta table Relations qui posent problème et enfin créer ta clé primaire.

    Lorsque cette partie sera ok, oui tu pourras valider ton MCD (si on admets qu'une personne peut ne jamais avoir cotisé)

    JimBoLion
    N'oubliez pas le Tag si la réponse donnée vous a été utile et pour une réponse pertinente.
    Retrouvez-moi sur le chat en salon base de données

  9. #9
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 124
    Points : 81
    Points
    81
    Par défaut
    Merci pour le conseil j'essaie ça de suite, par contre j'ai toujours un problème mon MCD, je te poste une photo tout à l'heure mais quand je le transforme en MLD celà ne donne pas les tables que je dispose.

    A tte

  10. #10
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 124
    Points : 81
    Points
    81
    Par défaut
    OK Donc le problème des doubles clés est que les données présentées un problème d'intégrité référentiel,
    Dire si les tables avait un probleme d'intégriter référentielle fait aussi partie du projet.
    Donc 26 lignes supprimé sur 116 00 et c'est niquel.

    Merci beaucoup pour les renseignements, il ne me reste plus qu'as dessiner le MCD en Merise et c'est niquel je pourrais travailler avec la base...

    A+

  11. #11
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 124
    Points : 81
    Points
    81
    Par défaut
    Hola,

    Bon c'est cool, ça fonctionne pour les relations, j'ai géré les problèmes d'intégrité référentielle,
    il y avait des personnes en relation avec eux même ou des personnes en relation qui n'existent
    pas dans la table PERSONNE sauf un détail mais il me faut une précision par le prof,
    car mon choix de clé primaire devrait être pour la table RELATION :
    RELATION(ID_PERSO1,ID_PERSO2, ID_TP_REL, DEB_REL, FIN_REL)
    En effet logiquement une personne peut être marrié avec quelqu'un puis divorcé avec la même personne et pourquoi pas remarrié encore avec la même personne, bien sur le tout avec des dates différentes.

    Le problème est que certaine date sont null (il n'y à pas forcement de fin de relation) ou par manque d'information donc je ne sais pas encore comment le gérer.

    en tout cas les relations donnent ça :
    Nom : ACCESS_RELATION.PNG
Affichages : 671
Taille : 42,5 Ko

    Merci pour tout
    Je clos le sujet étant donné que pour mon dernier problème me sera répondu par le prof.

    Dumbl

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

Discussions similaires

  1. Relation sur une meme table
    Par alexandre92100 dans le forum Doctrine2
    Réponses: 7
    Dernier message: 10/02/2012, 15h12
  2. [Doctrine] Relation many to many sur la même table
    Par hmartin.fr dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 01/09/2011, 09h41
  3. Relation pere fils dans une meme table
    Par tongo dans le forum Hibernate
    Réponses: 1
    Dernier message: 12/07/2010, 09h35
  4. relation Parent/Enfant sur la meme table et requete SQL
    Par tatayoyo dans le forum Langage SQL
    Réponses: 5
    Dernier message: 17/04/2007, 18h57
  5. Update champ avec le meme champ de la meme table
    Par Baquardie dans le forum Langage SQL
    Réponses: 7
    Dernier message: 04/06/2004, 11h17

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