डेटा एडेप्टर और डेटा रीडर | DataAdapter and DataReader Various info Studytoper

Ashok Nayak
0

डेटा एडेप्टर और डेटा रीडर | DataAdapter and DataReader

Table of content (TOC)

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

पहली विधि के तहत, हम DataReader ऑब्जेक्ट का उपयोग करते हैं, जिसके लिए उत्पन्न परिणाम प्राप्त करने के लिए एक खुले और उपलब्ध कनेक्शन की आवश्यकता होती है। सिंगल यूजर होने की स्थिति में यह तरीका काफी तेज गति से काम करता है। लेकिन जब कई उपयोगकर्ता इस तरह से एक्सेस किए जा रहे डेटा का उपयोग करते हैं, तो यह विधि कनेक्शन पूलिंग को बहुत प्रभावित करती है।

दूसरी विधि के तहत, हम DataAdapter ऑब्जेक्ट का उपयोग करते हैं। यह ऑब्जेक्ट थोड़े अलग तरीके से काम करता है, जिसमें यह ऑब्जेक्ट कमांड को डेटासेट या डेटाटेबल ऑब्जेक्ट में निष्पादित करने के बाद उत्पन्न परिणाम को भरता है, जो एक प्रकार का डिस्कनेक्टेड कैश है।

एक बार जब यह किसी उपयुक्त ऑब्जेक्ट में ऑब्जेक्ट कमांड के सक्रिय होने के बाद उत्पन्न सभी डेटा को भर देता है, उसके बाद यह अंतर्निहित डेटा स्रोत से स्वयं को डिस्कनेक्ट कर देता है। जिससे उस अंतर्निहित भौतिक कनेक्शन को किसी अन्य वस्तु द्वारा पुन: उपयोग किया जा सकता है।

DbDataReader – To Fetch Data in Connected Way

कुछ कमांड डेटा लाते हैं, कुछ कमांड डेटा में हेरफेर करते हैं जबकि कुछ कमांड दोनों करते हैं। इस वजह से, कमांड को निष्पादित करने के लिए DbCommand में कई तरीके हैं।

उदाहरण के लिए, DbCommand ऑब्जेक्ट में ExecuteNonQuery() नामक एक विधि है जो कमांड निष्पादित होने पर प्रभावित होने वाली पंक्तियों की कुल संख्या देता है। इसी तरह DbCommand हमें ExecuteReader () नाम की एक और विधि प्रदान करता है, जिसका उपयोग तब किया जाता है जब हम परिणामसेट जैसी क्वेरी का परिणाम प्राप्त करना चाहते हैं।

जबकि DbCommand की ExecuteReader () विधि एक ऑब्जेक्ट देता है जो DbDataReader वर्ग से विरासत में मिला है। जहां DbDataReader एक सामान्य सार बेस क्लास है और किसी भी डेटा रीडर क्लास को इसे इनहेरिट करने की आवश्यकता होती है। इस व्यवस्था को हम निम्नलिखित आरेख द्वारा बेहतर ढंग से समझ सकते हैं:

जब हमारे पास DataReader ऑब्जेक्ट होता है, तो हम इसके साथ विभिन्न तरीकों का उपयोग कर सकते हैं, रिटर्न किए गए परिणामसेट के विभिन्न रिकॉर्ड्स पर पुनरावृति कर सकते हैं और वर्तमान स्थिति के रिकॉर्ड के विभिन्न कॉलम के मूल्यों को पढ़ सकते हैं।

यहां यह नोट करना महत्वपूर्ण है कि डेटा रीडर एक रीड-ओनली या फॉरवर्ड-ओनली ऑब्जेक्ट है, जो एक ही स्थिति में काम करता है, जबकि अंतर्निहित भौतिक डेटाबेस कनेक्शन खुला है।


DbDataAdapter – Bridge between Connected and Disconnected

डेटा एडेप्टर ऑब्जेक्ट एक ब्रिज ऑब्जेक्ट है, जो ADO.NET के डिस्कनेक्टेड पार्ट और कनेक्टेड पार्ट के बीच मौजूद होता है और दोनों के बीच कम्युनिकेशन का माध्यम बन जाता है।

चूंकि डेटा एडेप्टर ऑब्जेक्ट का वास्तविक कार्यान्वयन पूरी तरह से अंतर्निहित डेटा स्रोत पर आधारित है, इसलिए यदि MSSQL सर्वर का उपयोग बैकएंड के रूप में किया जा रहा है, तो ADO.NET के कनेक्टेड और डिस्कनेक्ट किए गए भागों को संप्रेषित करने के लिए SqlDataAdapter की आवश्यकता होती है। जबकि यदि Oracle सर्वर को बैकएंड के रूप में उपयोग किया जा रहा है, तो ADO.NET के कनेक्टेड और डिस्कनेक्टेड भागों को संचार के लिए प्राप्त करने के लिए OracleDataAdapter की आवश्यकता होती है।

जबकि अगर हमें ODBC या OleDb के माध्यम से जेनेरिक एक्सेस की आवश्यकता है, तो हमें OdbcDataAdapter और OleDbDataAdapter जैसे जेनेरिक डेटा एडेप्टर के माध्यम से ADO.NET के कनेक्टेड और डिस्कनेक्टेड भागों के बीच संचार स्थापित करना होगा।

साथ ही, ADO.NET ऑब्जेक्ट के अन्य कनेक्टेड भागों की तरह, विभिन्न डेटा एडेप्टर के बीच समानता को लागू करने की सुविधा DbDataAdapter वर्ग के माध्यम से उपलब्ध है, जिसे हम निम्नलिखित चित्र द्वारा बेहतर ढंग से समझ सकते हैं:
डेटा एडेप्टर और डेटा रीडर | DataAdapter and DataReader

जैसा कि हम ऊपर दिए गए चित्र में देख सकते हैं कि SqlCommand और OracleCommand नाम के दो वर्ग हैं और दोनों वर्ग DbCommand नामक वर्ग से विरासत में मिले हैं।

डेटा एडेप्टर वर्ग को सामान्य तरीके से काम करने के लिए, विभिन्न DbCommands जैसे InsertCommand, UpdateCommand, DeleteCommand और SelectCommand की आवश्यकता होती है जो क्रमशः INSERT, UPDATE, DELETE और SELECT नामक SQL संचालन का प्रतिनिधित्व करते हैं। DbDataAdapter नाम का बेस क्लास, इन चार कमांड को DbCommand डेटा प्रकार के चार गुणों के रूप में परिभाषित करता है।

SqlDataAdapter, OracleDataAdapter आदि। अन्य विशिष्ट डेटा एडेप्टर, ADO.NET कनेक्टेड ऑब्जेक्ट्स के समान, इन चार कमांडों को इन्सर्ट कमांड, अपडेट कमांड, DeleteCommand और SelectCommand को चार गुणों के रूप में प्रदान करते हैं, जो डेटा प्रदाता विशिष्ट कमांड ऑब्जेक्ट जैसे SqlCommand और OracleCommand हैं। मान के रूप में स्वीकार करें।


Final Words

तो दोस्तों आपको हमारी पोस्ट कैसी लगी! शेयरिंग बटन पोस्ट के नीचे इसे अपने दोस्तों के साथ शेयर करना न भूलें। इसके अलावा अगर बीच में कोई परेशानी हो तो कमेंट बॉक्स में पूछने में संकोच न करें। आपकी सहायता कर हमें खुशी होगी। हम इससे जुड़े और भी पोस्ट लिखते रहेंगे। तो अपने मोबाइल या कंप्यूटर पर हमारे ब्लॉग "various info: Education and Tech" को बुकमार्क (Ctrl + D) करना न भूलें और अपने ईमेल में सभी पोस्ट प्राप्त करने के लिए हमें अभी सब्सक्राइब करें। 

अगर आपको यह पोस्ट अच्छी लगी हो तो इसे अपने दोस्तों के साथ शेयर करना ना भूलें। आप इसे व्हाट्सएप, फेसबुक या ट्विटर जैसी सोशल नेटवर्किंग साइटों पर साझा करके अधिक लोगों तक पहुंचने में हमारी सहायता कर सकते हैं। शुक्रिया!

Post a Comment

0 Comments
* Please Don't Spam Here. All the Comments are Reviewed by Admin.
Post a Comment (0)

READ ALSO- 

google ads
Our website uses cookies to enhance your experience. Learn More
Accept !