Hampir semua yang ada di Node.js tidak sinkron, dan fungsi kueri SQL pasti demikian. Anda menelepon conn.query(query, callback)
, yang berarti kueri dipanggil, lalu setelah ada hasil di beberapa titik di masa mendatang, fungsi panggilan balik Anda dipanggil dengan hasil untuk Anda kerjakan. Jadi:
conn.query(query, function runThisEventually(err, rows, fields) {
if (err) {
console.error("One or more errors occurred!");
console.error(err);
return;
}
processResults(rows, fields);
});
Anda tidak akan mendapatkan hasilnya segera setelah memanggil conn.query(...)
, sehingga kode Anda dapat melakukan "hal-hal lain" sementara itu, dan pada titik tertentu, panggilan balik Anda akan dipicu dan Anda dapat mengambil pemrosesan hasil di sana.