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.