Maison  >  Questions et réponses  >  le corps du texte

"Insérer des données en utilisant mysql2 dans Node.js"

<p>J'ai cette requête POST</p> <pre class="brush:php;toolbar:false;">app.post("/msg", (req, res) => { console.log(req.body) connection.query('INSERT INTO plans (sujet, notes, ressources) VALEURS (?)', [req.body.topic, req.body.note, req.body.resource],(erreur, résultats) => if (erreur) return res.json({ erreur : erreur }); }); });</pré> <p>Mais j'ai obtenu cette erreur</p> <pre class="brush:php;toolbar:false;">"erreur": { "code": "ER_WRONG_VALUE_COUNT_ON_ROW", "errno": 1136, "sqlState": "21S01", "sqlMessage": "Le nombre de colonnes ne correspond pas au nombre de valeurs pour la ligne 1" }</pré> <p>Voici le formulaire</p> <pre class="brush:php;toolbar:false;">CREATE TABLE plans( id INT NOT NULL CLÉ PRIMAIRE AUTO_INCREMENT, sujet VARCHAR(64) NON NULL, note VARCHAR(200) NON NULL, ressources VARCHAR(200) NON NULL );</pré> <p>Quel est le problème avec la demande ? </p>
P粉465287592P粉465287592422 Il y a quelques jours383

répondre à tous(1)je répondrai

  • P粉161939752

    P粉1619397522023-08-25 16:17:51

    Vous devez fournir des points d'interrogation en fonction du nombre de valeurs de colonne que vous fournissez.

    app.post("/msg", (req, res) => {
      console.log(req.body)
      connection.query('INSERT INTO plans (topic, notes, resources) VALUES 
      (?,?,?)', [req.body.topic, req.body.note, req.body.resource],(error, 
      results) => {
         if (error) return res.json({ error: error });
    
         });
     });

    Cela devrait fonctionner

    répondre
    0
  • Annulerrépondre