Heim >Datenbank >MySQL-Tutorial >Wie können Versprechen verwendet werden, um asynchrone MySQL-Ergebnisse in Node.js zu verarbeiten?
Verwenden Sie Versprechen, um MySQL-Rückgabewerte in Node.js zu verarbeiten
Die asynchrone Natur von Node.js stellt Entwickler, die an synchrone Programmierung gewöhnt sind, vor Herausforderungen. Dies kann mit einer Funktion wie getLastRecord veranschaulicht werden, die Daten von einer MySQL-Funktion abruft.
Beim Versuch, einen Wert von getLastRecord zurückzugeben, können Entwickler aufgrund der asynchronen Natur des Knotens auf Probleme stoßen. So beheben Sie dieses Problem mit Promises:
<code class="javascript">function getLastRecord(name) { return new Promise((resolve, reject) => { const connection = getMySQL_connection(); const query_str = "SELECT name, " + "FROM records " + "WHERE (name = ?) " + "LIMIT 1 "; const query_var = [name]; connection.query(query_str, query_var, (err, rows, fields) => { if (err) { return reject(err); } resolve(rows); }); }); }</code>
Um den zurückgegebenen Wert zu verarbeiten, können Sie then verwenden und Callbacks abfangen:
<code class="javascript">getLastRecord('name_record').then(function(rows) { // Processing of rows goes here }).catch((err) => { throw err; });</code>
Promises ermöglichen es Ihnen, die Verschachtelung von Callbacks zu vermeiden und den Code zu verbessern Lesbarkeit. Sie werden besonders nützlich, wenn sie mit Promise.all und Akkumulatoren wie Array.prototype.reduce kombiniert werden.
Das obige ist der detaillierte Inhalt vonWie können Versprechen verwendet werden, um asynchrone MySQL-Ergebnisse in Node.js zu verarbeiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!