"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > वादों के साथ Node.js में MySQL रिटर्न मानों को अतुल्यकालिक रूप से कैसे संभालें?

वादों के साथ Node.js में MySQL रिटर्न मानों को अतुल्यकालिक रूप से कैसे संभालें?

2024-11-09 को प्रकाशित
ब्राउज़ करें:282

How to Handle MySQL Return Values Asynchronously in Node.js with Promises?

नोड.जेएस में MySQL रिटर्न वैल्यू को संसाधित करने के वादे का लाभ उठाना

पायथन से नोड.जेएस में संक्रमण में, नोड की अतुल्यकालिक प्रकृति। js चुनौतियाँ पेश कर सकता है। ऐसे परिदृश्य पर विचार करें जहां आपको MySQL फ़ंक्शन से एक मान वापस करने की आवश्यकता है, जैसे getLastRecord(name).

परंपरागत रूप से, Node.js अतुल्यकालिक संचालन के लिए कॉलबैक का उपयोग करता है। हालाँकि, getLastRecord() की अतुल्यकालिक प्रकृति को संभालने के लिए, हम वादों का लाभ उठाएंगे।

Promise का उपयोग करके फ़ंक्शन को कार्यान्वित करने के लिए:

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
  });
}

लौटे गए मूल्य को संभालने के लिए, आप .then() और .catch() कॉलबैक को प्रॉमिस से जोड़ सकते हैं:

getLastRecord('name_record')
  .then((rows) => {
    // Handle returned rows here
    console.log(rows);
  })
  .catch((err) => {
    // Handle errors here
    console.log(err);
  });

आप सशर्त जांच भी लागू कर सकते हैं:

getLastRecord('name_record')
  .then((rows) => {
    if (rows.length > 20) {
      console.log('action');
    }
  });

इस परिदृश्य में वादों को अपनाकर, आप अतुल्यकालिक संचालन को संभालने के लिए एक अधिक संरचित और पठनीय दृष्टिकोण पेश करते हैं, एक स्वच्छ और अधिक रखरखाव योग्य कोडबेस सुनिश्चित करते हैं।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3