ホームページ >データベース >mysql チュートリアル >Async/Await は Node.js での複数の MySQL クエリをどのように簡素化できるでしょうか?
Node.js では、データベースの対話を効率的に処理するために非同期操作が広く採用されています。 Node.js 8 以降で導入された async/await 構文は、このような操作を同期のような方法で処理する便利な方法を提供します。
MySQL データベースに対して複数のクエリを実行する必要があるシナリオを考えてみましょう。結果を文字列に追加します。従来、コールバックは非同期クエリを処理するために使用されていました。ただし、async/await を使用すると、このプロセスを簡素化して同期できます。
次のコードは、Node.js で async/await キーワードを使用して複数の MySQL クエリを実行し、その結果を追加する方法を示しています。
const mysql = require('mysql'); // or use import if you use TS const util = require('util'); const conn = mysql.createConnection({ yourHOST/USER/PW/DB }); // node native promisify const query = util.promisify(conn.query).bind(conn); (async () => { try { const rows1 = await query('select count(*) as count1 from file_managed'); const rows2 = await query('select count(*) as count2 from file_managed'); const rows3 = await query('select count(*) as count3 from file_managed'); const rows4 = await query('select count(*) as count4 from file_managed'); // append the results to a string const appendedText = `${rows1[0].count1} - ${rows2[0].count2} - ${rows3[0].count3} - ${rows4[0].count4}`; console.log(appendedText); } finally { conn.end(); } })();
このコードでは、クエリ関数が util.promisify() でラップされ、コールバックベースの関数が変換されています。 Promise を返す関数に変換します。 async/await 構文を使用すると、複数のクエリを順番に実行できます。各クエリの結果は変数に割り当てられ、最後に追加された文字列がコンソールに記録されます。
以上がAsync/Await は Node.js での複数の MySQL クエリをどのように簡素化できるでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。