sql >> Database >  >> RDS >> PostgreSQL

Asynchrone databasequery's met PostgreSQL in Node werken niet

De eenvoudigste manier om de waarde van de q . correct vast te leggen variabele in een afsluiting in modern JavaScript is om forEach te gebruiken :

queries.forEach(function(q) {
    client.query(q[0], function(err, result) {
      if(err) {
        console.log(err);
      } else {
        q[1](result);
      }
    });
 });

Als u de waarde niet vastlegt, geeft uw code de laatste waarde weer die q had, zoals de callback-functie later werd uitgevoerd, in de context van de bevattende functie.

forEach , door een callback-functie te gebruiken, isoleert en vangt de waarde van q zodat het goed kan worden geëvalueerd door de innerlijke terugroepactie.



  1. Hoe substrings wijzigen?

  2. MySqlCommand-aanroepfunctie

  3. Mysql-dekking versus composiet versus kolomindex

  4. Waarom werkt de PHP sneller dan MySQL?