Partage
  • Partager sur Facebook
  • Partager sur Twitter

amelioration requete SELECT, INSERT, UPDATE

    24 septembre 2018 à 9:54:04

    Bonjour,

    J'ai une requête mysql qui SELECT une information dans l'une de mes tables now' + value.sigle + ' puis si l'information est correcte elle INSERT ou UPDATE selon le besoin dans une autre table ' + value.getS + ' :

    connection.query('SELECT step FROM now' + value.sigle + ' WHERE ref=?', [value.fullProject], function (error, results) {
            if (error) { throw error;
            } else {
    
                if (results[0].step == 5) {
    
                    connection.query('INSERT INTO ' + value.getS + ' (ref, pseudo, action) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE action = ?', [value.fullProject, value.getRef, value.getAction, value.getAction], function (error) {
                        if (error) { throw (error) }
                        else {
                            response.json({});
                        }
                    });
    
                } else {
                    //Mean, the projet doesn't exist
                    response.json({ results: "noExist" });
                }
            }
        });

    J'aurais aimer savoir si je suis obligé de passer par une transaction pour améliorer ma requête ou existe-i-il une autre solution ?

    -
    Edité par renjusyeager 17 octobre 2018 à 15:23:34

    • Partager sur Facebook
    • Partager sur Twitter
      24 septembre 2018 à 16:00:37

      Bonjour,

      Si tu dois mettre des variables sur des noms de table, c'est fort probable qu'il y ait un problème de conception de ta base de données ...

      Par ailleurs ta requête d'INSERT est erronée ... tu précises 3 colonnes ( ref, pseudo et action ) mais ne passe que deux valeurs, il manque un marqueur "?" dans VALUES ...

      Au vu de ce code, je pense vraiment à un problème de conception ... ça ne colle pas ...

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL

      amelioration requete SELECT, INSERT, UPDATE

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown