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

Requêtes MySQL Discussion :

Problème relations entre 2 tables


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 1
    Points : 3
    Points
    3
    Par défaut Problème relations entre 2 tables
    Bonjour ,

    Je n'arrive pas à faire la relation entre 2 tables. Sous phpmyadmin, tout semble correct. Pourtant lorsque j’effectue une simple requête, celle-ci affiche le contenu de toutes les tables.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    CREATE TABLE IF NOT EXISTS `MEDICAMENT` (
      `MED_ID` int(11) NOT NULL AUTO_INCREMENT,
      `MED_NOMCOMMERCIAL` varchar(50) NOT NULL,
      `MED_COMPOSITION` varchar(150) NOT NULL,
      `MED_EFFETS` varchar(150) NOT NULL,
      `MED_CONTRE_INDICATION` varchar(150) NOT NULL,
      PRIMARY KEY (`MED_ID`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
     
     
    CREATE TABLE IF NOT EXISTS `DOSAGE` (
      `DOS_ID` int(11) NOT NULL AUTO_INCREMENT,
      `DOS_QTE` int(11) NOT NULL,
      `DOS_UNIT` int(11) NOT NULL,
      `MED_ID` int(11) NOT NULL,
      PRIMARY KEY (`DOS_ID`),
      FOREIGN KEY (`MED_ID`) REFERENCES `MEDICAMENT` (`MED_ID`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
    Voici : après avoir remplie les 2 tables avec 2 entités avec des informations aléatoires et donné à DOS_QTE une valeur de 30, j'effectue la requête suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM MEDICAMENT, DOSAGE WHERE DOS_QTE = 30;
    et là cette dernière me retourne toutes les entités et non pas celle ou DOS_QTE = 30

    Je ne comprend pas.



    Merci d'avance pour votre aide

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 016
    Points : 23 705
    Points
    23 705
    Par défaut
    Bonjour,

    C'est parce que vous êtes en train de faire un produit cartésien en séparant vos 2 tables par une virgule (au passage, c'est une syntaxe vraiment désuète).
    La première chose à faire, c'est d'apprendre le SQL...
    Les tutoriels ici peuvent vous y aider, notamment celui sur les jointures : http://sqlpro.developpez.com/

    En l’occurrence, la requête que vous cherchez à faire est relativement basique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT * 
    FROM MEDICAMENT m
    INNER JOIN DOSAGE d ON m.MED_ID = d.MED_ID
    WHERE d.DOS_QTE = 30;
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

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

Discussions similaires

  1. [phpMyAdmin] Problème relation entre tables
    Par momo0409 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 14/09/2007, 15h04
  2. [Conception]problème de relation entre les tables
    Par vaness76 dans le forum Modélisation
    Réponses: 3
    Dernier message: 18/04/2007, 11h32
  3. [Conception] Problème de relation entre 2 tables
    Par mLk92 dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 20/10/2006, 15h39
  4. [DEBUTANT]Problème de relation entre deux tables
    Par Yomane dans le forum Schéma
    Réponses: 2
    Dernier message: 20/10/2006, 01h30
  5. Problème de relation entre deux tables + autre chose
    Par Goth_sensei dans le forum Langage SQL
    Réponses: 7
    Dernier message: 30/03/2006, 20h49

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