PB instruction UPDATE MySQL

Résolu
baborge Messages postés 93 Date d'inscription   Statut Membre Dernière intervention   -  
baborge Messages postés 93 Date d'inscription   Statut Membre Dernière intervention   -
Salut,
J'ai une requete qui fonctionne sur MySQL 4.0
mais mon hebergeur est en version 3.23
et mon instruction UPDATE ne veux pas fonctionner

Pouvez vous m'aider?? :

voici la requete tel que je l'ai ecrite:

update `tb_maj_ms` as t1 , `tb_nb_boite_ms` as t2 
set 
t1.nb_maison = t2.nb_boite 
where t1.id_ms = t2.id_ms 
and t1.id_agence = t2.id_agence 
and t1.id_ville = t2.id_ville 
and t1.code_nego = t2.code_nego 
and t2.nom_col = "nb_maison" 


Merci d'avance

7 réponses

  1. Fu Xuen Messages postés 3651 Statut Contributeur 306
     
    Salut,

    Je l'aurais écrite comme ça :
    UPDATE
      tb_maj_ms
    SET
      t1.nb_maison = t2.nb_boite 
    FROM
      tb_maj_ms t1, tb_nb_boite_ms t2 
    WHERE
      t1.id_ms = t2.id_ms 
      AND t1.id_agence = t2.id_agence 
      AND t1.id_ville = t2.id_ville 
      AND t1.code_nego = t2.code_nego 
      AND t2.nom_col = "nb_maison"
    -= Fu Xuen =-
    0
  2. baborge Messages postés 93 Date d'inscription   Statut Membre Dernière intervention   33
     
    merci pour ton aide ,
    mais j'ai deja essayer cette maniere et cela ne fonctionne pas non plus..... (

    ( d'autre part tu fais référence a un alias que tu n'a pas déclarer "t1")

    Salut
    0
  3. Canard007 Messages postés 5954 Date d'inscription   Statut Contributeur 216
     
    ca serai d avoir le message d erreur lorque mysql evalue cette requete?
    0
  4. baborge Messages postés 93 Date d'inscription   Statut Membre Dernière intervention   33
     
    Voila le message:

    You have an error in your SQL syntax near 'as t1 set nb_boite = (select t2.nb_boite from `tb_nb_boite_ms` as t2 w' at line 1


    Merci encore
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ahmed
     
    C'est simple parce que la version de mysql 3.23 ne supporte pas cette requète. il faut la faire par php.
    0
  7. baborge Messages postés 93 Date d'inscription   Statut Membre Dernière intervention   33
     
    Merci Messieur,

    je viens de trouver la solution, avec 2 requete et des variables sous php

    Encore merci
    0
  8. Canard007 Messages postés 5954 Date d'inscription   Statut Contributeur 216
     
    heu c est normal que ton erreur pointe sur une ligne qui n est pas celle que tu as passé au debut?
    Sinon par rapport a l erreur tu as essayé de le faire en 2 requetes?
    tu fait ton select tu place le result dans une variable tampon et ensuite tu fais l update
    -1