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 :

[general] interet des tables de jointures ?


Sujet :

Schéma

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 41
    Points : 40
    Points
    40
    Par défaut [general] interet des tables de jointures ?
    Salut à tous je débute dans la modelisation....grace au tuto sqlpro sur ce site !

    alors voilà...

    mon probleme: des utilisateurs peuvent afficher des modules en fonction de leur niveau de droit

    cardinalités: plusieurs à plusieurs puisque un user peut afficher de 0 à n modules et un modules peut être affiché par 0 à n user (ça me semble correct ?)

    voir MCD et MPD en pièces jointes...

    ma question:
    quel est l'interet des tables de jointure (ici table "AFFICHE") puisque dans le cadre de mon probleme je pourrais tres bien afficher les modules d'un user avec une requete simple du genre "SELECT mod_id from modules where mod_niv > usr_niv;"

    merci pour vos explications...
    Images attachées Images attachées   

  2. #2
    Membre éclairé Avatar de Le Pharaon
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 880
    Points : 742
    Points
    742
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT mod_id from modules where mod_niv > usr_niv
    1) Problème de syntaxe dans ta requête: Ca te générera une erreur usr_niv n'est pas un champ de la table modules. Voici une forme syntaxiquement correcte qui ne garanti pas de résultat satisfaisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT mod_id from modules, user where mod_niv > usr_niv
    2) La jointure c'est pour éviter des produits cartésiens. C'est à dire faire correspondra à chaque ligne de ta table modules tous les elements de la table user / user < mod_niv.
    Scuse me while I kiss the sky ! Jimi Hendrix

  3. #3
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut Intérêt des tables de jointure
    Comme dit Bujuman, si on ne met pas en oeuvre la relation — dérivée sous forme de table— AFFICHE, alors il y a produit cartésien, et chaque utilisateur est associé à chaque module, ce qui n'est pas le but recherché... AFFICHE permet de définir l'ensemble des couples légaux {module, utilisateur}. Hors jointure avec AFFICHE, point de salut...

    Faire simple, mais pas plus simple.
    (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à pour ça.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 41
    Points : 40
    Points
    40
    Par défaut
    ok...merci pour votre aide...

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

Discussions similaires

  1. [AC-2010] remplir des tables de jointure
    Par ttfme dans le forum Access
    Réponses: 4
    Dernier message: 29/04/2015, 15h37
  2. [PDO] PDO et requête ayant des tables avec jointures
    Par ninouee dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 15/10/2014, 09h34
  3. [AC-2007] Requête avec des tables de jointures
    Par Vhalar dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 15/08/2011, 19h00
  4. [GORM] Champs additionnels des tables de jointures
    Par 4mleth dans le forum Grails
    Réponses: 3
    Dernier message: 05/05/2011, 16h41
  5. [Conception] Tri des tables dans une jointure
    Par Tonio_35 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 28/07/2006, 15h05

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