विंडोमैकसॉफ्टवेयरसेटिंग्ससुरक्षाउत्पादकतालिनक्सएंड्रॉइडप्रदर्शनकॉन्फ़िगरेशनएप्पल सभी

Python के साथ Oracle डेटाबेस का उपयोग कैसे करें

संपादित 2 महीने पहले द्वारा ExtremeHow संपादकीय टीम

ओरैक्ल डेटाबेसपायथन एकीकरणप्रोग्रामिंगडेटाबेस प्रबंधनस्क्रिप्टिंगप्रशासक उपकरणप्रणाली विन्यासप्रदर्शनबादल कम्प्यूटिंगउद्यम समाधान

Python के साथ Oracle डेटाबेस का उपयोग कैसे करें

अनुवाद अपडेट किया गया 2 महीने पहले

Oracle Database एक शक्तिशाली और व्यापक रूप से उपयोग की जाने वाली संबंधपरक डेटाबेस प्रबंधन प्रणाली (RDBMS) है। इसे उसकी मजबूत विशेषताओं, उच्च प्रदर्शन, और विश्वसनीयता के लिए जाना जाता है। दूसरी ओर, Python एक बहुमुखी और आसानी से सीखने वाली प्रोग्रामिंग भाषा है जिसका व्यापक उपयोग डेटा विश्लेषण, वेब विकास, और अधिक में किया जाता है। इन दोनों प्रौद्योगिकियों को मिलाकर डेवलपर्स ऐसे अनुप्रयोग बना सकते हैं जो Oracle Database में संग्रहीत डेटा के साथ कुशलता से बातचीत कर सकते हैं। इस ट्यूटोरियल में, हम Python के साथ Oracle Database का उपयोग कैसे करें, इसका अन्वेषण करेंगे। हम पर्यावरण सेट अप करने के लिए आवश्यक कदम, एक कनेक्शन स्थापित करना, मूल डेटाबेस संचालन करना, और अपवादों को संभालना कवर करेंगे।

पर्यावरण की स्थापना

इससे पहले कि आप Python में Oracle Database के साथ काम करना शुरू कर सकें, आपको अपना विकास पर्यावरण सेट अप करना होगा। इसमें आवश्यक लाइब्रेरीज़ और टूल्स को स्थापित करना होता है ताकि Python और Oracle Database के बीच संचार की सुविधा हो सके।

cx_Oracle स्थापित करना

cx_Oracle एक Python मॉड्यूल है जो Oracle डेटाबेस तक पहुँच को सक्षम बनाता है, जिससे आप SQL क्वेरीज़ को निष्पादित कर सकते हैं, डेटा हेरफेर कर सकते हैं, और अधिक। यह Oracle डेटाबेसों से जुड़ने के लिए एक लोकप्रिय विकल्प है क्योंकि इसकी विस्तृत विशेषता सेट है।

cx_Oracle स्थापित करने के लिए, आप एक पैकेज प्रबंधक जैसे pip का उपयोग कर सकते हैं। अपने कमांड प्रॉम्प्ट या टर्मिनल को खोलें और निम्नलिखित कमांड दर्ज करें:

pip install cx_Oracle

यह cx_Oracle मॉड्यूल को डाउनलोड और स्थापित करेगा, जिससे यह आपके Python स्क्रिप्ट में उपयोग के लिए उपलब्ध होगा।

Oracle Instant Client स्थापित करना

cx_Oracle मॉड्यूल को आपके सिस्टम पर स्थापित Oracle Instant Client की आवश्यकता होती है। Oracle Instant Client वह लाइब्रेरी और टूल्स प्रदान करता है जो Oracle Database के साथ संचार सक्षम करने के लिए आवश्यक होते हैं।

आप Oracle Instant Client को आधिकारिक Oracle वेबसाइट से डाउनलोड कर सकते हैं। अपने ऑपरेटिंग सिस्टम के लिए उपयुक्त पैकेज का चयन करें और Oracle द्वारा प्रदान किए गए स्थापना निर्देशों का पालन करें।

स्थापित होने के बाद, आपको यह सुनिश्चित करने के लिए उचित पर्यावरण चर सेट करना होगा कि cx_Oracle Oracle Instant Client का पता लगा सके। यह अक्सर Linux पर LD_LIBRARY_PATH सेट करने या Windows पर PATH में Oracle Instant Client के स्थापित निदेशक को शामिल करने के लिए होता है।

Oracle Database से कनेक्ट करना

पर्यावरण सेट अप करने के बाद, अब आप Python को Oracle Database से कनेक्ट कर सकते हैं। यह अनुभाग आपको cx_Oracle का उपयोग करके Oracle Database इंस्टेंस के लिए एक कनेक्शन स्थापित करने के तरीके के बारे में मार्गदर्शन करेगा।

कनेक्शन बनाना

एक बार जब आपने cx_Oracle और Oracle Instant Client को स्थापित और कॉन्फ़िगर कर लिया है, तो आप अपने Python स्क्रिप्ट से Oracle Database के लिए एक कनेक्शन बना सकते हैं। यहां एक बुनियादी उदाहरण है कि कैसे कनेक्शन स्थापित किया जाए:

import cx_Oracle
# कनेक्शन विवरण को परिभाषित करें
dsn_tns = cx_Oracle.makedsn('hostname', 'port', service_name='service_name')
username = 'your_username'
password = 'your_password'
# कनेक्शन स्थापित करें
try:
    connection = cx_Oracle.connect(user=username, password=password, dsn=dsn_tns)
    print('कनेक्शन सफलतापूर्वक स्थापित हुआ।')
except cx_Oracle.DatabaseError as e:
    print('डेटाबेस से कनेक्ट करने में त्रुटि हुई:', e)
# कनेक्शन बंद करें
connection.close()

इस उदाहरण में, हम सबसे पहले cx_Oracle मॉड्यूल को आयात करते हैं। हम आवश्यक कनेक्शन विवरण को परिभाषित करते हैं, जिसमें होस्टनेम, पोर्ट, यूजरनेम, और पासवर्ड के साथ-साथ Oracle डेटाबेस इंस्टेंस के लिए सेवा नाम भी शामिल है। उसके बाद, हम cx_Oracle.connect() फ़ंक्शन का उपयोग करके कनेक्शन स्थापित करते हैं। किसी भी संभावित डेटाबेस त्रुटियों को संभालने के लिए कनेक्शन प्रयास को try और except ब्लॉक में लपेटना हमेशा एक अच्छा अभ्यास होता है।

SQL क्वेरीज़ का निष्पादन

एक बार जब आपने Oracle Database के साथ एक कनेक्शन स्थापित कर लिया है, तो आप डेटाबेस में संग्रहीत डेटा के साथ बातचीत करने के लिए SQL क्वेरीज़ का उपयोग कर सकते हैं। यह अनुभाग उन आधारभूत डेटाबेस परिचालनों का अन्वेषण करेगा जैसे डेटा क्वेरिंग, रिकॉर्ड्स सम्मिलित करना, और डेटा को अपडेट करना।

डेटा का क्वेरिंग

Oracle डेटाबेस से डेटा प्राप्त करने के लिए, आप SQL SELECT कथनों का उपयोग कर सकते हैं। यहां cx_Oracle का उपयोग करके SELECT क्वेरी के निष्पादन का एक उदाहरण है:

import cx_Oracle
# कनेक्शन विवरण
dsn_tns = cx_Oracle.makedsn('hostname', 'port', service_name='service_name')
username = 'your_username'
password = 'your_password'
# कनेक्शन स्थापित करें
try:
    connection = cx_Oracle.connect(user=username, password=password, dsn=dsn_tns)
    cursor = connection.cursor()
    # SELECT क्वेरी निष्पादित करें
    cursor.execute('SELECT * FROM your_table_name')
    # परिणाम प्राप्त करें और मुद्रित करें
    for row in cursor.fetchall():
        print(row)
except cx_Oracle.DatabaseError as e:
    print('SQL क्वेरी निष्पादित करने में त्रुटि:', e)
finally:
    cursor.close()
    connection.close()

इस उदाहरण में, हम पहले की तरह एक कनेक्शन स्थापित करते हैं और connection.cursor() विधि का उपयोग कर एक कर्सर वस्तु बनाते हैं। कर्सर का उपयोग SQL क्वेरीज़ को निष्पादित करने के लिए किया जाता है। हम cursor.execute() का उपयोग करके एक SELECT क्वेरी निष्पादित करते हैं और cursor.fetchall() का उपयोग करके परिणामों को प्राप्त करते हैं। परिणाम फिर कंसोल पर मुद्रित किए जाते हैं। संसाधनों को मुक्त करने के लिए हमेशा कर्सर और कनेक्शन को बंद करना याद रखें।

डेटा का सम्मिलन

Oracle डेटाबेस में एक तालिका में नए रिकॉर्ड जोड़ने के लिए, आप SQL INSERT कथन का उपयोग कर सकते हैं। यहां cx_Oracle का उपयोग करके डेटा सम्मिलित करने का एक उदाहरण है:

import cx_Oracle
# कनेक्शन विवरण
dsn_tns = cx_Oracle.makedsn('hostname', 'port', service_name='service_name')
username = 'your_username'
password = 'your_password'
# कनेक्शन स्थापित करें
try:
    connection = cx_Oracle.connect(user=username, password=password, dsn=dsn_tns)
    cursor = connection.cursor()
    # INSERT क्वेरी और डेटा को परिभाषित करें
    insert_query = 'INSERT INTO your_table_name (column1, column2) VALUES (:1, :2)'
    data_to_insert = [("Value1_1", "Value1_2"), ("Value2_1", "Value2_2")]
    # INSERT क्वेरी निष्पादित करें
    cursor.executemany(insert_query, data_to_insert)
    connection.commit()
    print('डेटा सफलतापूर्वक सम्मिलित किया गया।')
except cx_Oracle.DatabaseError as e:
    print('डेटा डालने में त्रुटि:', e)
    connection.rollback()
finally:
    cursor.close()
    connection.close()

इस उदाहरण में, हम INSERT क्वेरी और सम्मिलित करने के लिए डेटा को परिभाषित करते हैं। cursor.executemany() विधि हमें कई डेटा सेटों के साथ INSERT क्वेरी को निष्पादित करने की अनुमति देती है। निष्पादन के बाद, परिवर्तन स्थायी बनाने के लिए connection.commit() का उपयोग करके लेन-देन को कमिट करना महत्वपूर्ण है। यदि कोई त्रुटि होती है, तो हम connection.rollback() का उपयोग में किए गए किसी भी परिवर्तन को रद्द करने के लिए करते हैं।

डेटा को अपडेट करना

एक तालिका में मौजूदा रिकॉर्ड्स को अपडेट करने के लिए, आप SQL UPDATE कथनों का उपयोग कर सकते हैं। यहां cx_Oracle का उपयोग करके डेटा अपडेट करने का एक उदाहरण है:

import cx_Oracle
# कनेक्शन विवरण
dsn_tns = cx_Oracle.makedsn('hostname', 'port', service_name='service_name')
username = 'your_username'
password = 'your_password'
# कनेक्शन स्थापित करें
try:
    connection = cx_Oracle.connect(user=username, password=password, dsn=dsn_tns)
    cursor = connection.cursor()
    # UPDATE क्वेरी को परिभाषित करें
    update_query = 'UPDATE your_table_name SET column1 = :1 WHERE column2 = :2'
    data_to_update = ("NewValue1", "CriteriaValue2")
    # UPDATE क्वेरी निष्पादित करें
    cursor.execute(update_query, data_to_update)
    connection.commit()
    print('डेटा सफलतापूर्वक अपडेट किया गया।')
except cx_Oracle.DatabaseError as e:
    print('डेटा अपडेट करने में त्रुटि:', e)
    connection.rollback()
finally:
    cursor.close()
    connection.close()

इस उदाहरण में, हम एक तालिका में मौजूदा डेटा को संशोधित करने के लिए एक UPDATE क्वेरी निष्पादित करते हैं। cursor.execute() विधि का उपयोग नए मानों को प्लेसहोल्डर्स के साथ और अपडेट के लिए मापदंड के साथ पास करने के लिए किया जाता है। निष्पादन के बाद, हम परिवर्तन लागू करने के लिए लेन-देन को कमिट करते हैं।

अपवादों को संभालना

डेटाबेस के साथ काम करते समय, अपवादों को प्रभावी ढंग से संभालना महत्वपूर्ण होता है ताकि आपकी एप्लिकेशन त्रुटियों के साथ सुचारू रूप से निपट सके। आपकी डेटाबेस परिचालनों के चारों ओर try-except ब्लॉक्स का उपयोग अपवादों को पकड़ने और प्रबंधित करने में मदद करता है जो कि वास्तव में होता है।

उदाहरण के लिए, आप cx_Oracle के DatabaseError अपवाद का उपयोग कर सकते हैं ताकि जब कनेक्शन स्थापित करने या क्वेरी निष्पादित करने में कोई त्रुटि होती है तो उसे पकड़ और संभाल सकें:

try:
    # डेटाबेस परिचालन
except cx_Oracle.DatabaseError as e:
    print('कोई त्रुटि हुई:', e)

अपवादों को संभालने के अलावा, जब कर्सर और कनेक्शन की आवश्यकता नहीं होती है तो डेटाबेस संसाधनों को छोड़ना भी महत्वपूर्ण होता है। finally ब्लॉक में इन कार्यों को लपेटने से यह सुनिश्चित होता है कि वे हमेशा निष्पादित होते हैं, चाहे कोई अपवाद उत्पन्न हो या नहीं।

निष्कर्ष

cx_Oracle मॉड्यूल का उपयोग करते हुए, Python डेवलपर्स प्रभावी रूप से Oracle डेटाबेस से कनेक्ट और बातचीत कर सकते हैं। इस ट्यूटोरियल में, हमने आपके पर्यावरण को सेट अप करने, एक Oracle डेटाबेस के साथ एक कनेक्शन स्थापित करने, क्वेरीज़ निष्पादित करने, डेटा सम्मिलित करने और अपडेट करने के लिए SQL क्वेरीज़ को निष्पादित करने के लिए कदमों को कवर किया है, और अपवादों को संभालना भी शामिल किया है। इन तकनीकों को अपने कार्यप्रवाह में शामिल करके, आप मजबूत अनुप्रयोग बना सकते हैं जो Oracle डेटाबेस और Python की शक्ति का लाभ उठाते हैं।

यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं


टिप्पणियाँ