[MySQL] Insert + sous requete

Insert + sous requete [MySQL] - SQL/NoSQL - Programmation

Marsh Posté le 27-07-2007 à 18:39:17    

Bonjour,
 
 
A ma tres grande surprise, je n'arrive pas à faire des sous requetes dans mon insert .... C'est tres important car comme vous pouvez vous en doutez, je n'ai pas acces directement au donnée que je veux inceder. J'ai juste la correspondance.  
 

Code :
  1. insert versements set
  2.   id_types_versements = 4,
  3.   id_vendeurs_destinataire = select id_vendeurs from codes_vendeurs where code = '330607054',
  4.   id_services = 1,
  5.   id_concessionnaires = select id_concessionnaires from codes_concessionnaires where code = '330602172',
  6.   id_reseaux = 6,
  7.   id_types_jeux = 6,
  8.   id_users_origine = 1,
  9.   points_versement = 5000,
  10.   commentaire_administratif = 'Pole Position 1 - Trophees Exceptionnels',
  11.   date_versement = now();


 
et cela me retourne l'erreur :  
 

Citation :

You have an error in your SQL syntax near 'select id_vendeurs from codes_vendeurs where code = '330607054',
            id_services' at line 3


 
 
il me semble l'avoir fait et cela fonctionner et cela fonctionner. Ce n'etait pas sur ce serveur MySQL. Lorsque je regarde sur PhpMyAdmin, je vois que c'est : MySQL 3.23.58. Il commence à se faire vieux. On pourrait meme dir qu'ils sont ocmpletement à la traine. On est à la version 5 et il n'est meme pas à la version 4.  
 
C'est peut etre pour cette raison que ca fonctionne pas ....
J'ai essayé avec la syntaxe traditionnel du insert : insert into MATABLE (chp1, ....) values (select chp1 from sousrequete where ....), .......). Cela ne fonctionne pas non plus.

Reply

Marsh Posté le 27-07-2007 à 18:39:17   

Reply

Marsh Posté le 27-07-2007 à 22:11:26    

bon je viens de faire un test sur mon easyphp1.7 (l'avant derniere version). Il utilise mysql 4 et ca a l'air de fonctionner ...

Reply

Marsh Posté le 29-07-2007 à 21:01:53    

bonsoir
je suis surprise :
en oracle je mets obligatoirement des parenthèses pour "border" les sous requêtes : c'est plus lisible ets je ne suis pas sûre qu'il soit possible de faire autrement...
 
on n'y est donc pas obligé en MySQL ?
 

Reply

Sujets relatifs:

Leave a Replay

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