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 :

Amis et partage de lieux [MCD]


Sujet :

Schéma

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Amis et partage de lieux
    Bonjour à tous,
    Je viens a vous ce soir car j'ai besoin de votre avis concernant la base de données que j'essaye de créer. J'ai construit un schéma MERISE (dont je ne suis pas sur) et je souhaite créer les tables correspondantes dans ma base de donnée Mysql.
    Le problème:
    Un utilisateur peut avoir 0 ou plusieurs amis (utilisateurs).
    Un utilisateur peut partager un ou plusieurs lieux avec ses amis.


    Le schéma :
    ----------------------------
    |(1,N) |
    Utilisateur(0,N)------(partage)-------(1,N)Lieu
    |(0,N) |(0,N)
    -(ami)-


    (Désolé pour la qualité de la chose )

    Voila, si vous pouviez m'aider a clarifier un peu tout ca, a corriger le schéma si besoin est et surtout a m'aider pour la construction des tables.


    Merci d'avance.

  2. #2
    Membre chevronné
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Août 2007
    Messages
    797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Août 2007
    Messages : 797
    Points : 2 060
    Points
    2 060
    Par défaut
    Bonjour ecarecar,

    Citation Envoyé par ecarecar Voir le message
    Un utilisateur peut avoir 0 ou plusieurs amis (utilisateurs).
    A priori, ton schéma est correct. Plus clairement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    +---0,n--[UTILISATEUR]--0,n---+
    |                             |
    +------------(AMI)------------+
    Attention, dans ce type d'associations réflexives, il convient d'éviter les redondances. Si A et B sont deux utilisateurs amis, les associations {A, B} et {B, A} sont strictement équivalentes. Par conséquent, lors de la mise en oeuvre dans la base de données, avant de créer la ligne {B, A} dans la table, il conviendra de vérifier si la ligne {A, B} n'existe pas déjà, et réciproquement. Concrètement, dès lors que A est l'ami de B, B est l'ami de A !


    Citation Envoyé par ecarecar Voir le message
    Un utilisateur peut partager un ou plusieurs lieux avec ses amis.
    Là, c'est un peu plus délicat. Je comprends qu'un utilisateur peut partager des lieux avec ses amis, pas avec n'importe quel utilisateur. Donc seuls des amis partagent des lieux.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    +---0,n--[UTILISATEUR]--0,n---+
    |                             |
    +------------(AMI)------------+
                   |
                   |
                  0,n
                   |
               (PARTAGE)
                   |
                  0,n
                   |
                   |
                [LIEU]
    PARTAGE est une association entre une association (AMI) et une entité (LIEU).

    Au niveau relationnel, les tables dérivées sont :

    UTILISATEUR (IdUtil, ...)
    AMI (#IdUtil, #IdUtil, ...)
    LIEU (IdLieu, ...)
    PARTAGE (#IdUtil, #IdUtil, #IdLieu, ...)

    Si A a pour amis B et C, la table AMI contiendra les lignes :

    A B
    A C

    Si A partage le Lieu L1 avec B et C, et le lieu L2 avec B seulement, la table PARTAGE contiendra les lignes

    A B L1
    A C L1
    A B L2
    N'oubliez pas de consulter les Cours Merise et la F.A.Q. Merise
    _______________________________________________________

    Les Règles du Club Developpez.com
    Vous avez votre réponse ? Merci de cliquer sur

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci de ta réponse rapide . Je comprends mieux maintenant.

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

Discussions similaires

  1. API/Plugin Comment reproduire le partage à des amis ?
    Par Jonathan.b dans le forum Facebook
    Réponses: 11
    Dernier message: 09/06/2011, 13h59
  2. [VB6] [Réseau] Connexion et partage de données
    Par tomnie dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 21/10/2002, 18h12
  3. Partager son disque
    Par tintin22 dans le forum Web & réseau
    Réponses: 2
    Dernier message: 16/09/2002, 00h34
  4. Réponses: 4
    Dernier message: 13/05/2002, 16h43
  5. Peux t'on créer une copie locale de l'objet partagé?
    Par Anonymous dans le forum CORBA
    Réponses: 8
    Dernier message: 16/04/2002, 16h20

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