Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1378 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MySQL InnoDB et jointures multiples

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

MySQL InnoDB et jointures multiples

n°1857246
teeebo
Posté le 03-03-2009 à 19:08:25  profilanswer
 

Bonjour!
 
J'ai un petit problème avec une jointure multiple sous MySQL :  
J'ai 2 tables :  

  • users_tbl (user_id, nom, ....)
  • passwords_tbl (fk-user_id, password)

fk-user_id est la clé étrangère de user_id.
 
Je voudrais récuperer le mot de passe du user 'xxx' :  

Code :
  1. SELECT password
  2. FROM users_tbl, passwords_tbl
  3. WHERE 'fk-user_id' = 'user_id' and nom = 'xxx';


La requete ne retourne aucun résultats (biensur je me suis assurer que le nom 'xxx' existe dans users_tbl et fait références a un password dans passwords_tbl)
A mon avis cela vient du fais que le moteur de la table est InnoDB. D'ou la question avec InnoDB la jointure fk-user_id = user_id n'est pas nécessaire?et même superflu?
 
Merci!

mood
Publicité
Posté le 03-03-2009 à 19:08:25  profilanswer
 

n°1857256
couak
Posté le 03-03-2009 à 19:57:14  profilanswer
 

Code :
  1. SELECT password
  2. FROM users_tbl, passwords_tbl
  3. WHERE fk-user_id = user_id and nom = 'xxx';

n°1857258
teeebo
Posté le 03-03-2009 à 20:08:06  profilanswer
 

Merci couak!
 
mais je ne pense pas que le problème vient d'ici car si j'execute ta requete (donc sans les guillement à fk-user_id = user_id) ça me renvoie l'erreur suivante :  
Unknown column 'fk' in 'where clause'  
apparemment SQL n'aime pas trop les - (tirets)


Message édité par teeebo le 03-03-2009 à 20:09:19
n°1857265
teeebo
Posté le 03-03-2009 à 20:14:01  profilanswer
 

Je n'ai rien dit! J'ai changer fk-user_id en fk_user_id est là plus aucun problème!! Donc apparemment impossible de mettre un tiret dans l'attribut d'une table MySQL...?

n°1857271
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 03-03-2009 à 20:18:39  profilanswer
 

en même temps, le tiret fait partie de la panoplie d'opérateurs de tout sgbd, rien d'étonnant à ce que ça pète hein :o
essaie d'appeler un de tes champs "SELECT" par exemple, ça risque d'être marrant [:chrisbk]


---------------
J'ai un string dans l'array (Paris Hilton)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MySQL InnoDB et jointures multiples

 

Sujets relatifs
pb debutant installation et config de mysqlbash mysql
Mysql ne démarre pas [debian etch ]Pb débutant PHP Mysql (easy PHP 3.0)
Quoi choisir => Oracle ? MySQL ? Microsoft SQL ?[MYSQL 5] Resultat d'une procédure stockée dans une table temporaire
Conception que j arrive pas à modeliser (jointures externes inside)Erreur MySQL ?
[RESOLU] [PHP/MYSQL] Problème d'exécution de requete imbriqué 
Plus de sujets relatifs à : MySQL InnoDB et jointures multiples


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR