sql >> Databasteknik >  >> RDS >> Mysql

Nodejs MySQL-anslutningsfråga returnerar värde till funktionsanrop

Problemet är detta:

var r = db.demo(query, function(result) { data = result; });

console.log( 'Data : ' + data);

console.log kommer att köras innan återuppringningsfunktionen anropas, eftersom db.demo är asynkron, vilket betyder att det kan ta lite tid att slutföra, men hela tiden nästa rad i koden, console.log , kommer att köras.

Om du vill komma åt resultaten måste du vänta på att återuppringningsfunktionen ska anropas:

var r = db.demo(query, function(result) { 
  console.log( 'Data : ' + result);
});

Det är så det mesta av kod som hanterar I/O kommer att fungera i Node, så det är viktigt att lära sig om det.




  1. i postgresql, är partitioner eller flera databaser mer effektiva?

  2. Formatera ett numeriskt SQL-frågeresultat med ett godtyckligt antal decimaler

  3. mysql vänster gå med inte returnera alla vänster tabellrad

  4. Xampp MS SQL-server PHP 5.6