Requette qui marche sur une base, mais pas sur l'autre

Requette qui marche sur une base, mais pas sur l'autre - SQL/NoSQL - Programmation

Marsh Posté le 19-04-2007 à 17:03:13    

Alors, je développe un site web qui tourne sur un serveur sous linux.
Et jutilise easyphp pour tester les script avant de les mettre en ligne.
Et la, j'ai une requette qui marche sur ma machine mais pas sur le serveur  :heink:  :heink:  
pourquoi  :??:  
 

Code :
  1. select id_projet,titre_projet from tProjets where id_entreprise = 270 and id_projet in
  2. ( select id_projet from tPrestataires_projets where etat = 2 )


 
A oui, mySQL me raconte ca:  

Citation :

#1064 - You have an error in your SQL syntax near 'select id_projet from tPrestataires_projets where etat = 2 )
LIMIT 0, 30 ' at line 1


Message édité par 174flo le 19-04-2007 à 17:07:25
Reply

Marsh Posté le 19-04-2007 à 17:03:13   

Reply

Marsh Posté le 19-04-2007 à 17:19:31    

différence de version de mysql...
A vue de nez je dirais que sur le serveur c'est une V3 ( qui supporte pas les requetes imbriqués).

 

Sinon, les IN ( SELECT ...) c'est degueu et over pas optimisé, je te conseille plutot de faire un EXISTS ( SELECT id_projet from tPrestataires_projets where etat = 2 and tProjets.id_projet = tPrestataires_projets.id_projet )
Enfin si tu est pas bloqué sur mysql 3 :o


Message édité par anapajari le 19-04-2007 à 17:20:04
Reply

Marsh Posté le 19-04-2007 à 17:20:09    

C'est les mêmes versions de MySQL? Lesquelles?  Jusqu'à 4.0, ça donnera une erreur de syntaxe en effet.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 19-04-2007 à 17:25:20    

Ok  :sweat: J'ai un MySQL 3.23.49, j'ai plus qu'a recommencer, merci  :hello:  

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed