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

MySQL Discussion :

relation entre tables


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 21
    Par défaut relation entre tables
    je viens d'apprendre php et mysql.je veux faire une liaison entre deux table.je sias pas comment.y a t'il de diagramme dans la base mysql?

  2. #2
    Membre éprouvé
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 509
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 509
    Par défaut
    Non, il y a pas de diagramme.
    Je vais faire simple pour expliquer comment faire un lien d'informations entre deux tables.

    J'ai deux tables avec avec une table de prénom et une de nom de famille. Le but est déterminer les différentes familles.
    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 Prenom(
        idPrenom MEDIMUMINT(9),
        Nom MEDIMUMINT(9),
        Prenom VARCHAR(250)
     
    );
    CREATE TABLE Nom(
        idNom MEDIMUMINT(9),
        Nom VARCHAR(250)
    )
    INSERT INTO Prenom (IdPrenom,idNom,Prenom) VALUE(1,1,'Jacques');
    INSERT INTO Prenom (IdPrenom,idNom,idNom,,Prenom) VALUE(2,2,'Leatitia');
    INSERT INTO Prenom (IdPrenom,idNom,Prenom) VALUE(3,1,'Julie');
    INSERT INTO Prenom (IdPrenom,idNom,Prenom) VALUE(4,3,'Charle');
     
    INSERT INTO Nom (idNom,Nom) VALUE(1,'Lerois');
    INSERT INTO Nom (idNom,Nom) VALUE(2,'Noel');
    INSERT INTO Nom (idNom,Nom) VALUE(3,'Dupont');
    Si je fais les requêtes sur les deux tables ceci me donnera :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    SELECT * FROM Prenom;
    IdPrenom | idNom | Prenom
    1              1         Jacques
    2              2         Leatitia
    3              1         Julie
    4              3         Charle
     
    SELECT * FROM Nom;
    IdNom | Nom
    1          Lerois
    2          Noel
    3          Dupont
    Pour déterminer qui est de quel famille via les informations saisie.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT Prenom, Nom FROM Prenom AS Pr
      INNER JOIN Nom AS Nm
        ON Pr.idNom = Nm.idNom;
     
    Prenom | Nom
    Jacques  Lerois
    Leatitia   Noel
    Julie       Lerois
    Charle    Dupont
    Il y a une autre manière de faire une jointure mais elle n'est pas terrible point de vue performance.

  3. #3
    Membre Expert

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Par défaut
    Bonjour,

    Je me trompe peut-être mais ici il me semble que l'on parle de contrainte d'intégrité.
    Je conseil pour cela la lecture de cet article qui explique l'utilité et la mise en place de ces contraintes

  4. #4
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 204
    Par défaut
    bonjour
    il ya un outil graphique et gratuit tu peux le telecharger de l'internet c'est DBDESIGNER
    Autre outil graphique : SQL DESIGNER.

  5. #5
    Membre éprouvé
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 509
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 509
    Par défaut
    Les outils graphiques sont bien mais déconseillé parce que faire des relations entre table sans en comprendre le mécanisme de fonctionnement peut être très problématique s'il y a une erreur.

Discussions similaires

  1. Access me change mes relations entre tables
    Par karimspace dans le forum Access
    Réponses: 14
    Dernier message: 29/03/2006, 09h57
  2. Relation entre tables dans bdd différentes
    Par Mandotnet dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 29/03/2006, 08h03
  3. Les relations entre tables
    Par sheira dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 20/03/2006, 15h03
  4. Récupération des relations entre tables
    Par Themacleod1980 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 02/02/2006, 11h34
  5. relations entre tables
    Par ilyassou dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 22/11/2005, 07h48

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