Posez votre question Signaler

Relations entre tables avec MySQL

Ludo - Dernière réponse le 28 août 2009 à 15:59
Salut,

J'ai créer mes tables sous phpmyadmin, mais comment fait on pour créer des relations entre les tables

J'ai vu aussi en créant mes tables qu'on pouvait pour chacun des champs cocher des options : Primary, Index, Unique.
Ces options ont-elles un rapport avec les relations entre les tables
Si non à quoi servent-elles

Merci de me rendre réponse.

Ludo
Lire la suite 

Relations entre tables avec MySQL »

3 réponses
Réponse
+7
moins plus
Les liens "en dur" avec MySQL ne sont pas possibles, c'est à mon avis le seul inconvénient de MySQL, pour établir une relationentre deux tables, tu dois le faire lors de tes requêtes:

Exemple:
tu as deux tables: personnes et login avec les champs suivants.

Table Personnes: id_Personne, id_Login, Prénom, Nom, adresse, etc..
Table Login: id_Login, Pseudo, pass.

tu définiras comme clé primaire de la table personnes, le champ id_Personne et dans la table Login, le champ id_Login.(dans phpmyAdmin, il fadra mettre ces champs en auto-increment pour qu'ils puissent servir de compteur automatique)

Si tu veux ensuite afficher les noms, prénoms et pseudos de chaque personne, il te suffira de faire la requête suivante qui indique la relation entre les deux tables.

select Personnes.Prénom, Personnes.Nom, Login.Pseudo in Personnes, Login where Personnes.id_Login = Login.id_Login

Ce qui est après le where définit la relation entre les deux tables.

En ésperant avoir pu t'aider.
ICQ 40021243
Youri
Ajouter un commentaire
Réponse
+5
moins plus
quand vous créez les tables, cliquez sur l'une d'entre elles, ensuite opérations, ensuite dans une case vous trouverez MyISAM modifier la par InnoDB, quand vous returnez pour ouvrir la table vous trouverez en bas Gestion des relations
Ajouter un commentaire
Réponse
+3
moins plus
Slt Ludo

Si tu bosses sur SQL, voici ton script de création des tables

Prenons pour exemple 2 tables Societe et Produits
Chaque societe de la table societe doit etre mise en relation avec ses produits dans la table produit.
Table societe : Cle primaire ID_societe.
Table produit : Cle primaire ID_produit.
Pour mettre en relation les 2 tables, ajoute un champs ID_societe dans la table societe
ie :
Table Produits
ID_produit INT NOT NULL PRIMARY KEY -> cle primaire
ID_societe INT NOT NULL REFERENCES Societe (ID_societe) -> cle secondaire de relation avec la table Societe

J'espère répondre + ou - à ta question
Courage
Eric
Ajouter un commentaire
Ce document intitulé « relations entre tables avec MySQL » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?