Maison >base de données >tutoriel mysql >Comment gérer les valeurs de retour MySQL de manière asynchrone dans Node.js avec des promesses ?
Tirer parti des promesses pour traiter les valeurs de retour MySQL dans Node.js
Lors de la transition de Python vers Node.js, la nature asynchrone de Node. js peut présenter des défis. Imaginons un scénario dans lequel vous devez renvoyer une valeur à partir d'une fonction MySQL, telle que getLastRecord(name).
Traditionnellement, Node.js utilise des rappels pour les opérations asynchrones. Cependant, pour gérer la nature asynchrone de getLastRecord(), nous exploiterons les promesses.
Pour implémenter la fonction à l'aide d'une promesse :
function getLastRecord(name) { return new Promise((resolve, reject) => { // Setup MySQL connection and query // ... connection.query(query_str, query_var, (err, rows, fields) => { if (err) { return reject(err); // Handle error } resolve(rows); // Resolve with results }); // Callback function }); }
Pour gérer la valeur renvoyée, vous pouvez chaîner Rappels .then() et .catch() à la promesse :
getLastRecord('name_record') .then((rows) => { // Handle returned rows here console.log(rows); }) .catch((err) => { // Handle errors here console.log(err); });
Vous pouvez également implémenter la vérification conditionnelle :
getLastRecord('name_record') .then((rows) => { if (rows.length > 20) { console.log('action'); } });
En adoptant les promesses dans ce scénario, vous introduisez un approche plus structurée et lisible de la gestion des opérations asynchrones, garantissant une base de code plus propre et plus maintenable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!