Base de données relationnelles. Comment lier 2 table?

cs_Tiriel Messages postés 21 Date d'inscription lundi 19 avril 2004 Statut Membre Dernière intervention 9 juin 2004 - 10 mai 2004 à 16:27
cs_showpanda Messages postés 1 Date d'inscription mercredi 4 juin 2003 Statut Membre Dernière intervention 19 mai 2004 - 19 mai 2004 à 12:58
Je souhaiterais savoir si quelqu'un pourrait m'indiquer la syntaxe pour lier 2 tables. Voilà la syntaxe sous access je souhaiterais connaître la correspondance en php :

 
SELECT stage.nom, stage.adresse_numéro, stage.adresse_rue, villes.nom_ville, villes.cp, satge.date_début, stage date_fin
FROM villes INNER JOIN stage ON villes.id_villes = stage.adresse_id_ville;


Dans ce code je lie la table stage avec la table villes afin de ne pas avoir de redondance.

5 réponses

chouchou1 Messages postés 4 Date d'inscription lundi 29 mars 2004 Statut Membre Dernière intervention 10 mai 2004
10 mai 2004 à 16:43
comment ca en php??? La jointure doit s effectuer en SQL si je ne m abuses. :shock)
0
dubitoph Messages postés 42 Date d'inscription mardi 27 septembre 2011 Statut Membre Dernière intervention 29 septembre 2011
10 mai 2004 à 20:00
Christophe

voici un exemple concret : je cherche à utiliser la cle (id) d'un client ainsi que son nom, tous deux situés dans la table clients, et, en plus, la localité du client dqui de trouve dans la table codes postaux :
$query "select clients.cle, clients.nom, codespostaux.localite from clients, codespostaux where codespostaux.cle clients.localite";
$result = mysql_query($query);
0
coxi19 Messages postés 3 Date d'inscription jeudi 5 juin 2003 Statut Membre Dernière intervention 12 mai 2004
11 mai 2004 à 16:33
le serveur mySQL accepte la syntaxe FOREIGN KEY dans la commande CREATE TABLE, mais ne la prend pas en compte.

http://dev.mysql.com/doc/mysql/fr/ANSI_diff_Foreign_Keys.html

donc il faut le faire par programmation et stocké la clef primaire de ta table codes postaux dans un champ de ta table clients.
0
cs_Tiriel Messages postés 21 Date d'inscription lundi 19 avril 2004 Statut Membre Dernière intervention 9 juin 2004
13 mai 2004 à 10:40
Merci pour votre aide à tous.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_showpanda Messages postés 1 Date d'inscription mercredi 4 juin 2003 Statut Membre Dernière intervention 19 mai 2004
19 mai 2004 à 12:58
c est vrai que mysql n est pas une sgbdr pour les notions de cléf étranger, il faut savoir deux choses

D abord ce referer a Merise, c est une methode pour la concetpion d une base de données relationnel

Puis enfin si vous voulez creer une liaison entre deux table, voici un exemple

1 table PERSONNEL (id, nom, prenom, id_entreprise)
1 table ENTREPRISE (id, nom)

Si vous voulez savoir le nom et prenom des personnes travaillant dans l entreprise ou l id=1 par example

vous devrez faire

select PERSONNEL.nom, PERSONNEL.prenom FROM PERSONNEL, ENTREPRISE where PERSONNEL.id_entreprise = ENTREPRISE.id

et voila le tour est jouer apres vous pourez le lister dans un tableau a l aide de mysql_fetch_array
0
Rejoignez-nous