Promises を使用して Node.js で MySQL 戻り値を処理する
Node.js の非同期の性質は、同期プログラミングに慣れている開発者にとって課題となります。これは、MySQL 関数からデータをフェッチする getLastRecord のような関数で説明できます。
getLastRecord から値を返そうとすると、開発者はノードの非同期の性質により問題が発生する可能性があります。 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>
戻り値を処理するには、then コールバックと catch コールバックを使用できます。
<code class="javascript">getLastRecord('name_record').then(function(rows) { // Processing of rows goes here }).catch((err) => { throw err; });</code>
Promise を使用すると、コールバックのネストを回避し、コードを改善できます。読みやすさ。これらは、Promise.all や Array.prototype.reduce.
などのアキュムレータと組み合わせると特に便利になります。以上がPromise を使用して Node.js で非同期 MySQL 結果を処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。