अधिकांश वास्तविक दुनिया के एप्लिकेशन किसी न किसी तरह से डेटाबेस के साथ इंटरैक्ट करते हैं। डेटाबेस डेटा के साथ बने रहना, विश्लेषण करना और इंटरैक्ट करना आसान बनाता है।

अधिकांश प्रोग्रामिंग भाषाएं अनुप्रयोगों को PostgreSQL जैसे डेटाबेस से जोड़ने के लिए समर्थन प्रदान करती हैं। जानें कि आप नोड एप्लिकेशन को PostgreSQL से कनेक्ट करने के लिए नोड-पोस्टग्रेज मॉड्यूल का उपयोग कैसे कर सकते हैं।

शुरुआत कैसे करें

स्थानीय डेटाबेस से कनेक्ट करके शुरू करने के लिए, आपके पास होना चाहिए PostgreSQL सर्वर स्थापित।

PostgresSQL सबसे आम रिलेशनल डेटाबेस सिस्टम में से एक है अपने लचीलेपन और शक्ति के कारण। आप इसे MySQL के विकल्प के रूप में उपयोग करने पर विचार कर सकते हैं यदि आपकी परियोजना जटिल है या आप ऐसे समाधान की तलाश में हैं जो ओपन-सोर्स लोकाचार को गले लगाता है।

एक नोड एप्लिकेशन बनाएं

पहला कदम एक नोड एप्लिकेशन बनाना है जिसका उपयोग आप कनेक्शन कोड का परीक्षण करने के लिए करेंगे। अपने पसंदीदा फ़ोल्डर में, एक नया फ़ोल्डर बनाएँ।

mkdir पोस्टग्रेज-नोड

आपके द्वारा बनाए गए फ़ोल्डर पर नेविगेट करें और npm को इनिशियलाइज़ करें।

सीडी पोस्टग्रेज-नोड
npm init -y

यह आदेश उत्पन्न करना चाहिए a पैकेज.जेसन फ़ाइल।

इसके बाद, एक नई फाइल बनाएं और उसे नाम दें index.js. आप इस फाइल में Node को PostgreSQL से कनेक्ट करेंगे।

नोड-पोस्टग्रेज मॉड्यूल का उपयोग करें

नोड-पोस्टग्रेज मॉड्यूल एक npm पैकेज है जो आपको PostgreSQL डेटाबेस से कनेक्ट और इंटरैक्ट करने की अनुमति देता है। दो विकल्प हैं जिनका उपयोग आप नोड-पोस्टग्रेज मॉड्यूल का उपयोग करके नोड को पोस्टग्रेएसक्यूएल से जोड़ने के लिए कर सकते हैं: एक एकल क्लाइंट या एक कनेक्शन पूल। तो आपको क्या उपयोग करना चाहिए?

यदि आपको एक समय में केवल एक स्थिर कनेक्शन की आवश्यकता है, तो एकल क्लाइंट का उपयोग करें। हालांकि, अगर आपको समवर्ती और एकाधिक अनुरोधों का उपयोग करने की आवश्यकता है, तो कनेक्शन पूल का उपयोग करें।

नोड-पोस्टग्रेज स्थापित करें

नोड-पोस्टग्रेज स्थापित करने के लिए अपने टर्मिनल में निम्न कमांड चलाएँ।

NPM इंस्टॉल स्नातकोत्तर

यदि आप नोड>= 14.x का उपयोग करते हैं, तो आपको बाद में [email protected] स्थापित करना होगा। आप संस्करण संख्या को इस तरह से संस्थापन कमांड से जोड़कर निर्दिष्ट कर सकते हैं।

NPM इंस्टॉल स्नातकोत्तर =8.7.3

PostgreSQL से जुड़ना

नोड-पोस्टग्रेज मॉड्यूल को पोस्टग्रेएसक्यूएल डेटाबेस से कनेक्ट करने के लिए निम्नलिखित मानों की आवश्यकता होती है।

  • PGUSER - PostgreSQL उपयोगकर्ता नाम के रूप में कनेक्ट करने के लिए।
  • PGHOST - कनेक्ट करने के लिए सर्वर होस्ट का नाम।
  • PGPASSWORD - PostgreSQL सर्वर का पासवर्ड।
  • PGDATABASE - उस डेटाबेस का नाम जिससे आप जुड़ रहे हैं।
  • PGPORT - सर्वर होस्ट पर कनेक्ट करने के लिए पोर्ट नंबर।

एक .env फ़ाइल बनाएं और अपने डेटाबेस से संबंधित मानों को प्रतिस्थापित करते हुए इन चरों को जोड़ें:

PGUSER=<PGUSER>
पीजीहोस्ट =<पीजीहोस्ट>
पीजीपासवर्ड=<पीजीपासवर्ड>
पीजीडाटाबेस =<पीजीडाटाबेस>
पीजीपोर्ट =<पीजीपोर्ट>

.env फ़ाइल तक पहुँचने के लिए dotenv पैकेज स्थापित करें।

NPM इंस्टॉल दोतेनव

में index.js, आयात करें और dotenv को कॉन्फ़िगर करें।

स्थिरांक डोटेनव = ज़रूरत होना("डॉटेनव")
दोतेनव.config()

एकल क्लाइंट का उपयोग करके PostgreSQL डेटाबेस से कनेक्ट करें

नीचे दिया गया कोड दिखाता है कि आप एकल क्लाइंट का उपयोग करके नोड को PostgreSQL सर्वर से कैसे कनेक्ट कर सकते हैं।

स्थिरांक {ग्राहक} = ज़रूरत होना("पीजी")
स्थिरांक डोटेनव = ज़रूरत होना("डॉटेनव")
दोतेनव.config()

स्थिरांक कनेक्ट डीबी = अतुल्यकालिक () => {
प्रयत्न {
स्थिरांक ग्राहक = नया ग्राहक({
उपयोगकर्ता: प्रक्रिया.env.PGUSER,
मेज़बान: प्रक्रिया.env.पीघोस्ट,
डेटाबेस: प्रक्रिया.envपीजीडाटाबेस,
पासवर्ड: प्रक्रिया.env.PGPASSWORD,
बंदरगाह: प्रक्रिया.envपीजीपोर्ट
})

इंतजार क्लाइंट.कनेक्ट ()
कॉन्स्ट रेस = क्लाइंट की प्रतीक्षा करें। क्वेरी ('चुनते हैं * से some_table')
सांत्वना देनालॉग (रेस)
इंतजार क्लाइंट.एंड ()
} पकड़ (गलती) {
सांत्वना देनालॉग (त्रुटि)
}
}

कनेक्टडीबी ()

कनेक्शन पूल का उपयोग करना

जैसा कि पहले ही उल्लेख किया गया है, एक कनेक्शन पूल आपको अपने सर्वर से कई कनेक्शन अनुरोध करने की अनुमति देता है।

स्थिरांक {पूल} = ज़रूरत होना("पीजी");
स्थिरांक डोटेनव = ज़रूरत होना("डॉटेनव");
दोतेनव.config();

स्थिरांक कनेक्ट डीबी = अतुल्यकालिक () => {
प्रयत्न {
स्थिरांक पूल = नया पोखर({
उपयोगकर्ता: प्रक्रिया.env.PGUSER,
मेज़बान: प्रक्रिया.env.पीघोस्ट,
डेटाबेस: प्रक्रिया.envपीजीडाटाबेस,
पासवर्ड: प्रक्रिया.env.PGPASSWORD,
बंदरगाह: प्रक्रिया.envपीजीपोर्ट,
});

इंतजार पूल.कनेक्ट ()
कॉन्स रेस = प्रतीक्षा पूल। क्वेरी ('चुनते हैं * से ग्राहक')
सांत्वना देनालॉग (रेस)
इंतजार पूल.एंड ()
} पकड़ (गलती) {
सांत्वना देनालॉग (त्रुटि)
}
}

कनेक्टडीबी ()

उपरोक्त उदाहरण आपको .env फ़ाइल के माध्यम से डेटाबेस कॉन्फ़िगरेशन को नियंत्रित करने देते हैं। हालाँकि, आप इन कॉन्फ़िगरेशन मानों की आपूर्ति भी कर सकते हैं मानक पर्यावरण चर का उपयोग करना. यह दृष्टिकोण आपको स्टार्ट-अप समय पर कॉन्फ़िगरेशन को आसानी से बदलने देता है।

निम्नलिखित कनेक्शन कोड पर विचार करें।

स्थिरांक कनेक्ट डीबी = अतुल्यकालिक () => {
प्रयत्न {
स्थिरांक पूल = नया पोखर();
कॉन्स रेस = प्रतीक्षा पूल। क्वेरी ('चुनते हैं * से ग्राहक')
सांत्वना देनालॉग (रेस)
इंतजार पूल.एंड ()
} पकड़ (गलती) {
सांत्वना देनालॉग (त्रुटि)
}
}

इस प्रोग्राम में, आप पूल को इनिशियलाइज़ करते समय कनेक्शन ऑब्जेक्ट को तर्क के रूप में पास नहीं कर रहे हैं। इसके बजाय, जब आप इस तरह से प्रोग्राम शुरू करते हैं तो आपको कनेक्शन विवरण निर्दिष्ट करना होगा:

PGUSER=<PGUSER> \
पीजीहोस्ट =<पीजीहोस्ट> \
पीजीपासवर्ड=<पीजीपासवर्ड> \
पीजीडाटाबेस =<पीजीडाटाबेस> \
पीजीपोर्ट =<पीजीपोर्ट> \
नोडअनुक्रमणिका.जेएस

नोड को इस तरह से PostgreSQL से कनेक्ट करना आपको अधिक पुन: प्रयोज्य प्रोग्राम लिखने की अनुमति देता है।

PostgreSQL के साथ और अधिक करना

डेटाबेस के साथ इंटरैक्ट करने वाला एप्लिकेशन बनाने के लिए, आपको इसे पहले डेटाबेस से कनेक्ट करना होगा। इस लेख में, आपने सीखा कि नोड-पोस्टग्रेस मॉड्यूल का उपयोग करके नोड को पोस्टग्रेएसक्यूएल डेटाबेस से कैसे जोड़ा जाए।

PostgreSQL के अलावा, MySQL जैसी अन्य डेटाबेस प्रबंधन प्रणालियाँ हैं जिनका उपयोग आप अपने एप्लिकेशन में कर सकते हैं। आपके द्वारा चुना गया डेटाबेस टूल आपकी डेटा आवश्यकताओं के अनुकूल होना चाहिए।