Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Node JS MySQL-Abfragefunktion gibt kein Ergebnis zurück

Praktisch alles in Node.js ist asynchron, und SQL-Abfragefunktionen sind es definitiv. Sie rufen conn.query(query, callback) auf , was bedeutet, dass die Abfrage aufgerufen wird, und sobald es irgendwann in der Zukunft ein Ergebnis gibt, wird Ihre Callback-Funktion mit dem Ergebnis aufgerufen, mit dem Sie arbeiten können. Also:

conn.query(query, function runThisEventually(err, rows, fields) {
    if (err) {
      console.error("One or more errors occurred!");
      console.error(err);
      return;
    }
    processResults(rows, fields);
});

Sie erhalten das Ergebnis nicht sofort nach dem Aufruf von conn.query(...) , sodass Ihr Code in der Zwischenzeit "andere Dinge" erledigen kann, und irgendwann wird Ihr Rückruf ausgelöst und Sie können dort die Ergebnisverarbeitung abholen.