डाटाबेस प्रोग्रामिंग विद एडू. नेटपार्ट-1 | डाटा बेस प्रोग्रामिंग क्या है? एवं उपयोग | एडीओ का परिचय ADO.NET | Database Programming With ADO.NET In Hindi
डाटाबेस प्रोग्रामिंग विद एडू. नेट परिचय (Introduction) – ए.डी.यू. या एड् डॉट नेट लायब्रेरी का वह संकलन है जो आपको कई डाटाबेस प्रणालियों का इकट्ठा एक्सेस विजुअल स्टूडिया डॉट नेट में उपलब्ध कराता है। डाटाबेस प्रणालियों में आप किसी भी डाटाबेस प्रणाली यथा एस. क्यू.एल., अरिकल का उपयोग कर अपने एप्लिकेशन में डाटाबेस को जोड़ सकते हैं। इस अध्याय में हम आपके साथ एडू डॉट नेट की चर्चा करेंगे। एडू डॉट नेट असंयोजित डाटा आर्किटेक्चर (disconnected data architecture) पर आधारित है। संयोजित डाटा आर्किटेक्चर के बारे में भी इस अध्याय में आपको बताया गया है।
इस पार्ट-1 में हम जानेगे :- डाटाबेस (Database), प्राइमरी तथा फॉरेन की (Primary and Foreign Keys), ए. डी. ओ. (ADO), एडू डॉट नेट (ADO.NET), एडू डॉट नेट के फीचर (Features of ADO.NET), एडू तथा एडू डॉट नेट (ADO and ADO.NET)
डाटाबेस (Database)
डाटाबेस का प्रबंधन आज के कम्प्यूटर की सर्वोत्तम उपयोगिता है तथा कम्प्यूटर इसके लिए सर्वप्रथम आवश्यकता है। किसान, दुकानदार कम्पनी, अस्पताल, रेलवे, एअरलाइन्स सब के सब अपने डाटा को व्यवस्थित रखने के लिए कम्प्यूटर का उपयोग करते हैं। कारण उन्हें सूचना मिलीसेकण्ड (milliseconds) में चाहिए। डाटाबेस प्रबंधन का इस अनुसार मूल कार अव्यवस्थित डाय का प्रबंधन कर उन्हें सूचना में परिवर्तित करना है। डाटाबेस कुछ मेगाबाइट से लेकर सैकड़ों टेराबाइट हो सकता है। डायबेस छोटा हो या बड़ा हो उसके डिजायन करने की तकनीक तथा सिद्धांत एक समान होते हैं। इसमें तालिका, फील्ड, रिकॉर्ड इत्यादि होते हैं।
तालिका या टेबल डाटा का एक आयाताकार ऐरे (ectangular array) होता है। तालिका का प्रत्येक कॉलम फील्ड (field) कहा जाता है। एक फील्ड में एक ही प्रकार के डाटा होते हैं। तालिका का प्रत्येक पंक्ति एक रिकॉर्ड (record) होता है। एक रिकॉर्ड में दूसरे पंक्ति की तरह ही समान सूचना संगृहीत होते हैं।
डाटाबेस या रिलेशनल डाटाबेस एक या एक से अधिक तालिकाओं का संकलन होता है। डाटाबेस या रिलेशनल डाटाबेस जिस सॉफ्टवेयर के द्वारा बनाये जाते हैं, वह सॉफ्टवेयर डाटाबेस प्रबंधन सॉफ्टवेयर कहा जाता है। आज बाजार में कई डाटाबेस प्रबंधन सॉफ्टवेयर उपलब्ध हैं। उनमें एक्सेस, ओरेकल, एस. क्यू. एल. सर्वर कुछ प्रचलित नाम हैं। वी.बी. डॉट इन सॉफ्टवेयर में बनाये गये डाटाबेस का प्रबंधन तथा विश्लेषण करने के लिए फीचर उपलब्ध कराता है।
वी.बी. डॉट नेट में एक शक्तिशाली डाटा व्यूअर है, जिसका उपयोग डाटाबेस के सभी भागों को ब्राउज़ करने में किया जा सकता है। प्रोजेक्ट में उपयोग किया गया डाटाबेस प्रोजेक्ट के bin फोल्डर में उपलब्ध होता है।
डाटाबेस प्रोग्रामिंग विद एडू. नेटपार्ट-1 | ado क्या है? और ado net क्या है | ADO.NET | Database, Internet, and Systems Integration- ADO.NET In Hindi
प्राइमरी तथा फॉरेन की (Primary and Foreign Keys)
एक अच्छे तालिका की खास बात यह होती है कि उसमें एक ऐसा फील्ड या फील्ड का एक ऐसा सेट होता है जो उस तालिका के प्रत्येक रिकॉर्ड को एक अनोखा पहचान उपलब्ध कराता है। इस फील्ड या फील्ड के सेट को प्राइमरी की कहा जाता है। उदाहरण के लिए CustomDetails तालिका में CUSTID फील्ड एक प्राइमरी की है। प्राइमरी की वैसे फील्ड को बनाया जाता है, जिसमें डुप्लीकेट डाटा होने की संभावना न हो। आमतौर पर रोल नं. या इसी प्रकार को संख्या प्राइमरी की बनाया जाता है।
जब डाटाबेस बनाया जाता है तब ही प्राइमरी की को स्पष्ट किया जाता है। यदि ऐसा नहीं होता है तो वी.बी. डॉट नेट इस बात पर बल देता है कि प्रत्येक रिकॉर्ड का प्राइमरी की फील्ड में एक एण्ट्री हो और यह कि एक ही एण्ट्री दो अलग-अलग रिकॉर्ड में प्रकट न हो। यदि उपयोगकर्त्ता बगैर प्राइमरी की के रिकॉर्ड प्रविष्ट करने का प्रयास करता है तो एक त्रुटि ‘Index or Primary Key can’t contain a null record” आयेगा।
यदि उपयोगकर्ता कोई रिकॉर्ड किसी अन्य रिकॉर्ड वाले प्राइमरी की के साथ प्रविष्ट करता है तो ‘The Changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship. Change the data in the field or field that contain duplicate data, remove the index, or redefine the index to permit duplicate entries and try again.” त्रुटि संदेश आयेगा।
जब किसी डाटाबेस में दो या अधिक तालिकाएँ होती हैं तो ये तालिकाएँ आपस में सम्बन्ध रखती हैं। उदाहरण के लिए CUSTOMDETAILS तथा OUTSTANDINGS तालिका CUSTID फील्ड की सहायता से जुड़े हैं। अब हम दो फील्ड CUSTOMDETAILS.CUSTID तथा OUTSTANDINGS.CUSTID को रेफर करते हैं।
यह ध्यान दें कि CUSTOMDETAILS.CUSTID, OUTSTANDINGS.CUSTID में अनोखे ढंग से प्रकट होते हैं तथा OUTSTANDINGS.CUSTID प्राइमरी की है। हम यहाँ कह सकते हैं कि USTOMDETAILS.CUSTID,
OUTSTANDINGS.CUSTID का फॉरन की है। फॉरन की को तब स्पष्ट किया जाता है, जब तालिका को सबसे पहले अर्थात्, फॉरन की में प्रत्येक मान अन्य तालिका के प्राइमरी की में भी प्रकट होना चाहिए।
CUSTOMERS.MDB में CUSTOMDETAILS.CUSTID तथा OUTSTANDINGS.CUSTID उनके अपने संबंधित तालिकाओं में प्राइमरी की की तरह स्पष्ट है तथा CUSTOMDETAILS. CUSTID को OUTSTANDINGS.CUSTID के फॉरन की की तरह स्पष्ट किया गया है। यदि उपयोगकर्त्ता CUSTOMDETAILS तालिका में Name जोड़ना चाहते हैं, जिसका CUSTID OUTSTANDINGS तालिका record because a related record is required in table CUSTOMDETAILS” आयेगा।
यह संदेश तब भी आयेगा जब आप OUTSTANDINGS.CUSTID फील्ड से CUSTID मिटाना चाहते हैं, जो CUSTOMDETAILS.CUSTID फील्ड में प्रकट होता है। दो तालिकाओं के परस्पर निर्भर होने के कारण CUSTOMERS.MDB रिलेशनल डाटाबेस कहलाता है।
फॉरन की की सहायता से वी.बी. डॉट नेट एक अर्थपूर्ण ढंग से रिलेशनल डाटाबेस में दो तालिकाओं को लिंक करता है। उदाहरण के लिए, दो तालिकाएँ CUSTOMDETAILS तथा OUTSTANDINGS CUSTOMERS.MDB डाटाबेस से
CUSTOMDETAILS.CUST ID फॉरेन की के आधार पर लिंक करता है, इस लिंक्ड तालिका को हमें बनाने की आवश्यकता नहीं होती है। यह वी.बी. डॉट नेट एस. क्यू. एल. भाषा में स्वयं बनाता है।
ए. डी. ओ. (ADO)
एडू (ADO) एक माइक्रोसॉफ्ट प्रौद्योगिकी है जिसका पूर्ण रूप एक्टिवएक्स डाटा ऑब्जेक्ट्स (ActiveX Data objects) होता है। इसको माइक्रोसॉफ्ट ने अक्टूबर 1996 में परिचित किया था। यह कॉम्पोनेण्ट ऑब्जेक्ट मॉडल (Component Object Model) का एक सेट है जो किसी डाटाबेस से डाटा को एक्सेस करने हेतु प्रोग्रामिंग इंटरफेस उपलब्ध कराता है।
यह डाटाबेस तथा प्रोग्रामिंग भाषा के बीच एक माध्यम के रूप में कार्य करता है। एडू की सहायता से प्रोग्रामर ऐसे प्रोग्राम बना सकते हैं जो डाटाबेस से डाटा को एक्सेस किए बगैर यह जाने कि डाटाबेस कैसे लागू होगा। एडू को रिमोट डाटा ऑब्जेक्ट्स (Remote Data Objects) तथा डाटा एक्सेस ऑब्जेक्ट (Data Access Object) का उत्तरवर्ती (successor) समझा जाता है।
एडू चार संकलन (collections) तथा बारह ऑब्जेक्ट से मिलकर बना होता है। फील्ड, प्रॉपर्टी, पैरामीटर तथा एरर (errors) इसके चार संकलन हैं। कनेक्शन, कमाण्ड, रिकॉर्ड सेट, इमिडिएट, बैच, ट्रांजैक्शन, रिकॉर्ड, स्ट्रिम, पैरामीटर, फील्ड, प्रॉपर्टी तथा एरर इसके बारह ऑब्जेक्ट हैं, जिससे मिलकर यह बना है। एडू की सहायता से डाटा को एक्सेस करने तथा मनिप्यूलेट करने के लिए ये आवश्यक पद हैं-
- डाटाबेस से जुड़ने के लिए कनेक्शन ऑब्जेक्ट का निर्माण
- डाटा को एक्सेस करने के लिए रिकॉर्ड सेट (RecordSet) ऑब्जेक्ट का निर्माण
- कनेक्शन को खोलना
- रिकॉर्ड सेट को खोलकर इसे पॉप्यूलेट करना / भरना तथा खुले हुए फंक्शन को पैरामीटर के रूप में इच्छित टेबल का नाम या एस. क्यू. एल. स्टेटमेन्ट पास करना।
- लाये गये डाटा पर इच्छित सर्च करना या अन्य प्रोसेसिंग करना
- बदलाव को Update अथवा UpdateBatch की सहायता से सुरक्षित करना।
- रिकॉर्ड सेट को बंद करना।
- कनेक्शन को बंद करना
इस पूरे क्रम में डाटाबेस कनेक्शन खुला रहता है। इसलिए इसे संयोजित डाटा आर्किटेक्चर (connected data architecture) पर आधारित प्रोद्यौगिकी कहते हैं और यही कमी के कारण एडू डॉट नेट का जन्म हुआ। एडू को कई भाषाओं यथा ए. एस. पी., पावर बिल्डर तथा विजुअल बेसिक फॉर एप्लिकेशन्स (Visual Basic for Applications) का सपोर्ट प्राप्त है।
एडू डॉट नेट (ADO.NET)
एडू डॉट नेट लायब्रेरी का एक संकलन है जिसका उपयोग माइक्रोसॉफ्ट एस. क्यू. एल. सर्वर, माइक्रोसॉफ्ट सर्वर, ऑरकल, एस. क्यू. एल., माइक्रोसॉफ्ट एक्सेल इत्यादि जैसे विभिन्न संसाधनों का उपयोग करते हुए शक्तिशाली डाटाबेस के निर्माण में होता है। एडू डॉट नेट (ADO.NET) डॉट नेट फ्रेमवर्क के विभिन्न क्लास पर निर्भर करता है जो आग्रह (requests) को प्रोसेस कर डाटाबेस प्रणाली तथा उपयोगकर्ता के बीच ट्रांजीशन (transition) को सम्पन्न करता है। ये सारी क्रियाएँ सामान्यतः DataSet क्लास के माध्यम से नियंत्रित होता है।
DataSet क्लास डाटाबेस इंजिन तथा विण्डोज कन्ट्रोल (जो पूरे यूजर इंटरफेस का होता है) के बीच का एक माध्यम (agent) होता है। DataSet ऑब्जेक्ट किसी भी प्रकार की सूची को व्यवस्थित करने में सक्षम होता है चाहे वह डाटाबेस इन्वायरमेण्ट में बना हो अथवा न बना हो। एडू डॉट नेट एप्लिकेशन में डाटाबेस के फीचरों को उपयोग करने के अलावा आप एक्स.एम.एल. के लाभ भी पूरी तरह से प्राप्त कर सकते हैं क्योंकि एक्स.एम.एल. DataSet क्लास के द्वारा पूरी तरह से सपोर्ट किया जाता है।
एप्लीकेशन के एक्स. एम. एल. (XML) सपोर्ट देने के लिए डॉट नेट में System.Xml.dll लायब्रेरी उपलब्ध होता है। परन्तु जब आप एक्स. एम.एल. का उपयोग करते हैं तो आपको इस लायब्रेरी को आयात (import) नहीं करना होता है। इसका कारण यह है कि जब आप New Project डायलॉग बॉक्स में विण्डोज फॉर्मूस एप्लीकेशन का निर्माण करते हैं तो System.Xml.dll नेमस्पेस आपके एप्लीकेशन में स्वतः ही जुड़ जाता है। डॉट नेट फ्रेमवर्क में जो क्लास एक्स. एम. एल. को लागू करता है वह System. Xml नेमस्पेस से परिभाषित होता है।
एडू डॉट नेट के फीचर (Features of ADO.NET)
आपने इस पाठ के पिछले खण्ड में एडू डॉट नेट के बारे में जाना। आइए अब हम एडू डॉट नेट के कुछ महत्वपूर्ण फीचर के बारे में जानते हैं। एडू डॉट नेट के फीचर इस प्रकार हैं –
1- असंयोजित डाटा स्ट्रक्चर (Disconnected Data Architecture) – एडू डॉट नेट में असंयोजित डाटा आर्किटेक्चर (disconnected data architecture) का प्रयोग होता है। जैसाकि मैंने बताया कि अगर आप एप्लीकेशन में किसी डाटाबेस का प्रयोग कर रहे हैं तो आपको उस डाटाबेस के उपयोग हेतु उस डाटाबेस सॉफ्टवेयर को खोलने की आवश्यकता नहीं होती है।
तथा एप्लीकेशन डाटा को एक्सेस करने एवं उसे अपडेट करते समय ही केवल डाटाबेस से जुड़ता है। डाटा एक बार प्राप्त होने के बाद डाटाबेस तथा यूजर इंटरफेस के बीच कोई कनेक्शन नहीं रहता। और फिर जब डाटाबेस को अपडेट करने की आवश्यकता होती है तब कनेक्शन पुनः स्थापित हो जाता है। इस प्रकार आर्किटेक्चर में डाटाबेस कई एप्लीकेशन की जरूरतों को साथ-साथ पूरा कर सकता है क्योंकि डाटाबेस तथा एप्लीकेशन के मध्य कनेक्शन कुछ ही समय के लिए होता है।
2- डाटासेट (DataSet) – डाटासेट डाटा एक्सेस करने का सबसे सामान्य विधि है क्योंकि यह असंयोजित डाटा आर्किटेक्चर को लागू करता है। एड् डॉट नेट असंयोजित डाटा आर्किटेक्चर को लागू करता है। एडू डॉट नेट असंयोजित डाटा आर्किटेक्चर पर आधारित होता है। अतः एप्लीकेशन के लिए यह सम्भव नहीं होता है कि यह प्रत्येक रिकॉर्ड को प्रोसेस करने के लिए डाटाबेस के साथ संवाद बनाए। परिणामस्वरूप, डाटा डाटासेट से ही स्टोर रहता है तथा वहीं से प्राप्त होता है।
डाटासेट डाटाबेस रिकॉर्ड का एक कैश्ड (cached) सेट होता है। आप वास्तविक डाटा की तरह ही डाटासेट में संग्रहीत रिकॉर्ड के साथ कार्य कर सकते। हैं। अंतर केवल यह है कि डाटासेट डाटा सोर्स से मुक्त रहता है तथा आप डाटा सोर्स से जुड़े नहीं (disconnected) रहते हैं।
3- एक्स. एम. एल. फॉरमेट (XML Format) – एडू डॉट नेट में एक्स. एम. एल. डाटा स्थानांतरण का एक बुनियादी फॉरमेट है। डाटा डाटाबेस से डाटासेट में स्थानांतरित होता है तथा डाटासेट से एक्स. एम. एल. का प्रयोग कर अन्य कम्पोनेन्ट स्थानांतरित होता है। आप डाटा सोर्स के रूप में एक्स. एम. एल. का भी प्रयोग कर सकते हैं तथा यहाँ से डाटासेट से डाटा को संग्रहीत कर सकते हैं। एड् डॉट नेट के साथ कार्य करने के लिए एक्स. एम. एल. का ज्ञान होना आवश्यक नहीं क्योंकि एक्स. एम. एल. में तथा इससे किये जाने वाले डाटा परिवर्तन यूजर से छिपा होता है।
चूँकि डाटासेट एक्स.एम.एल. फॉरमेट में स्टोर होता है और विभिन्न प्रकार के एप्लीकेशनों में संचारित हो सकता है जो एक्स. एम. एल. को सपोर्ट करता है। साथ ही, कोई भी कम्पोनेन्ट जो डाटासेट स्ट्रक्चर को पढ़ सकता है डाटा को प्रोसेस भी कर सकता है।
4- डाटा कमाण्ड्स (Data Commands) – डाटाबेस पर सभी क्रियाएँ डाटा कमाण्ड के माध्यम से होता है। डाटा कमाण्ड एक एस. क्यू. एल. स्टेटमेण्ट या फिर एक संग्रहीत प्रोसीजर हो सकता है। डाटा कमाण्ड को एक्जिक्यूट कर आप डाटाबेस से डाटा को प्राप्त कर सकते हैं, डाटा प्रविष्ट कर सकते हैं, डाटा मिटा सकते हैं या उसमें संशोधन कर सकते हैं।
एडू तथा एडू डॉट नेट (ADO and ADO.NET)
एडू तथा एडू डॉट नेट दोनों के मध्य जो सबसे बड़ा अंतर है, वह इसके आर्किटेक्चर का है। एडू संयोजित डाटा आर्किटेक्चर (connected data architecture) का अनुसरण करता है, जबकि एडू डॉट नेट असंयोजित डाटा आर्किटेक्चर (disconnected data architecture) का पालन करता है। आइए इस खण्ड में हम इन दोनों का तुलनात्मक दृष्टिकोण देखते हैं।
1– डाटा का इन मेमोरी रेप्रेजेण्टेशन (In memory Representation of Data) – एडू में डाटा को व्यक्त करने के लिए रिकॉर्ड सेट (RecordSet) का प्रयोग होता था। एडू डॉट नेट में इसके लिए डायसेट (DataSet) है।
2- टेबल की संख्या (Number of Tables) – (a) रिकॉर्ड सेट एक तालिका के जैसा दिखता है। यदि रिकॉर्ड सेट को कई डाटाबेस टेबल से डाटा प्राप्त करना होना था तो यह Join क्वेरी का प्रयोग करता था। इसके विपरीत डाटासेट एक या एक से अधिक टेबल का संकलन होता है। डाटासेट के अंदर के टेबल को डाटा टेबल कहा जाता है। इन्हें विशेषतः डाटाटेबल ऑब्जेक्ट्स (Datatable Objects) की तरह समझा जाता है।
यदि डाटासेट को एक से अधिक डाटाबेस टेबल से डाटा लेना होता है तो यह उसी अनुसार (एक से अधिक) डाटाटेबल ऑब्जेक्ट रखता है अर्थात् प्रत्येक डाटाटेबल ऑब्जेक्ट एक डायबेस टेबल या व्यू व्यवहार करता है। इस प्रकार डाटासेट उस डाटाबेस की संरचना की एक प्रति के तरह कार्य करता है।
(b) डायसेट के मध्य आमतौर पर संबंध होते हैं। डाटासेट के संबंध डाटाबेस के फॉरेन की संबंध के समान होते हैं, अर्थात् यह टेबल के रिकॉर्ड को एक-दूसरे के साथ संबद्ध (associated) रखता है। उदाहरण के लिए, यदि कोई डायसेट Investors टेबल रखता है तथा दूसरा टेबल Purchases प्रत्येक निवेशक के स्टॉक खरीददारी (purchase) पर टेबल रखता है तो यह Investors टेबल के प्रत्येक रो (पंक्ति) को Purchases टेबल के संबंधित रो के साथ जोड़कर एक रिलेशनशिप रख सकता है, क्योंकि डाटासेट एक से अधिक, अलग-अलग टेबल को रख सकता है तथा उनके मध्य संबंधों के बारे में सूचना को मेनटेन करता है।
यह रिकॉर्ड सेट के अपेक्षाकृत एक से एक टेबल तथा कई-से-कई संबंध के टेबलों के साथ अधिक बेहतर डाटा स्ट्रक्चर दे सकता है। एड से आप रिकॉडसेट के पंक्तियों को MoveNext मेथड का प्रयोग कर एक-एक करके स्कैन करते हैं। एड डॉट नेट में रो संकलन की तरह व्यक्त होते हैं। इसलिए पूरे टेबल को लूप कर सकते हैं, जैसा कि आप किसी अन्य संकलन के साथ करते हैं या किसी विशेष रो को ऑर्डिनल या records) के बारे में सूचना मेनटेन करते हैं तथा एक मेथड उपलब्ध कराते हैं, जो उन रिकॉर्ड को प्राप्त करने की प्राइमरी की इंडेक्स के माध्यम से एक्सेस कर सकते हैं।
DataRelation ऑब्जेक्ट्स मास्टर तथा विस्तृत रिकॉर्ड (detai) अनुमति देते हैं, जिनके साथ आप कार्य कर रहे हैं। उदाहरण के लिए Investors टेबल के उस रो से शुरू करके जिसमें A.Brijesh हैं आप Purchases टेबल के उन पंक्तियों के सेट को नेविगेट कर सकते हैं जो उसके खरीदारी का ब्यौरा देता हो।
कर्सर वह डाटाबेस एलिमेन्ट है जो अन्य यूजर द्वारा रिकॉर्ड नेविगेशन को, डाटा अपडेट करने की क्षमता को तथा डाटाबेस में बदलाव की विजिबिलिटी को नियंत्रित करता है। एड डॉट नेट में इनहेरेण्ट कर्सर ऑब्जेक्ट नहीं होता है, बल्कि डाटा क्लास सम्मिलित होते हैं, जो एक सामान्य कर्सर की फंक्शनेलिटि को उपलब्ध कराता है। के लिए एडू डॉट नेट DataReader ऑब्जेक्ट में कर्सर की फॉरवर्ड ओनली, रीड ऑनली फंक्शनेलिटि उपलब्ध है।
3- न्यूनतम ओपन कनेक्शन (Minimize Open Connections) – (a) एडू डॉट नेट में आप कनेक्शन को तब तक ही खोले रहते हैं, जब तक Select या Update जैसे डाटाबेस ऑपरेशन को सम्पन्न करते हैं। आप डाटासेट में पंक्तियों को पढ़ सकते हैं, उनके साथ कार्य कर सकते हैं तथा इनके लिए डाटाबेस के कनेक्शन को सक्रिय रखने अर्थात् खोले रखने की आवश्यकता नहीं है। एडू में भी रिकार्डसेट असंयोजित एक्सेस (disconnected access) प्रदान कर सकता है, परन्तु एडु को खासकर संयोजित एक्सेस के लिए ही डिजायन किया गया है।
(b) एडू तथा एडू डॉट नेट के असंयोजित प्रोसेसिंग के मध्य एक महत्त्वपूर्ण अंतर है। एडू में डाटाबेस के साथ कम्यूनिकेट करने के लिए OLE DB प्रोवाइडर को कॉल करते हैं। एडू डॉट नेट में आप डाटा अडैप्टर के माध्यम से डाटाबेस के साथ कम्यूनिकेट करते हैं।
OleDbDataAdapter, SqlDataAdapter, OdbcDataAdapter या OracleDataAdapter ऑब्जेक्ट ओ.एल.ई.डी.बी. (OleDb), एस. क्यू. एल., ओ.डी.बी.सी. (ODBC) या ओरेकल के क्रमशः डाटा अडैप्टर ऑब्जेक्ट हैं जो ओ.एल.ई.डीबवी. प्रोवाइडर या संबंधित डाटा सोर्स के द्वारा प्रदान किये गये ए, पी. आई. को कॉल करते हैं।
इसमें महत्त्वपूर्ण फर्क यह है कि एडू डॉट नेट में डाटा अडैप्टर की सहायता से आप डाटाबेस को डाटासेट में किये गये बदलाव कैसे ट्रांसमीट हो इसको नियंत्रित करते हैं। ऐसा परफॉरमेन्स के लिए ऑप्टीमाइज़र का डाटा वैलिडेशन चेक्स परमॉरम कर, या किसी अन्य अतिरिक्त प्रोसेसिंग को जोड़कर करते हैं।
नोट : डाटा अडैप्टर, डाटा कनेक्शन, डाटा कमाण्ड तथा डाटा रीडर वे कम्पोनेण्ट है जो एक डॉट नेट फ्रेमवर्क डाय प्रोवाइडर को बनाते हैं। माइक्रोसॉफ्ट तथा तृतीय पक्ष प्रोवाइडर अन्य डॉट नेट फ्रेमवर्क प्रोवाइडर उपलब्ध करा सकते हैं, जिन्हें विजुअल स्टूडियो में इंटिग्रेट किया जा सके।
4- एप्लिकेशन के मध्य डाटा शेअर करना (Sharing Data Between Applications) – एप्लिकेशन के मध्य एडू डॉट नेट डाटासेट को ट्रांसमीट करना एडू डिस्कनेक्टेड रिकॉडसेट को ट्रांस्मीट करने से कहीं अधिक आसान है। एडू डिस्कनेक्टेड रिकॉर्डसेट को एक कम्पोनेण्ट से दूसरे कम्पोनेण्ट तक ट्रांस्मीट करने के लिए आप कॉम मार्शलिंग (COM Marshalling) का उपयोग करते हैं। एडू डॉट नेट में डाटा को ट्रांस्मीट करने के लिए आप डाटासेट का उपयोग करते हैं जो एक्स. एम. एल. स्ट्रीम को ट्रांस्मीट कर सकता है।
एक्स. एम. एल. फाइल के ट्रांस्मीशन का कॉम मार्शलिंग की अपेक्षा निम्नलिखित फायदे हैं कॉम मार्शलिंग कॉम स्टैण्डर्ड द्वारा परिभाषित डाटा टाइप का सीमित सेट उपलब्ध करता है। क्योंकि एडू डॉट नेट में डाटासेट का ट्रांस्मीशन एक्स. एम. एल. फॉरमेट पर आधारित होता है। इसलिए इसमें डाटा टाइपस (data types) की कोई सीमा नहीं है। इस प्रकार डाटासेट को शेअर करने वाले कम्पोनेण्ट्स सामान्यतः उपयोग किये जाने वाले डाटा टाइपस से कहीं अधिक डाटा टाइपस का उपयोग कर पाते हैं।
5- परफॉरमेन्स (Performance) – बड़े एडू रिकॉर्डसेट या बड़े एडू डॉट नेट डाटासेट के ट्रांस्मीशन नेटवर्क संसाधनों की ज्यादा खपत करते हैं तथा जैसे-जैसे डाटा की मात्रा बढ़ती है नेटवर्क पर दबाव भी बढ़ता है। एडू तथा एडू डॉट नेट दोनों आपको इस दबाव को न्यूनतम करने की अनुमति देते हैं कि कौन सा डाटा ट्रांस्मीट हो।
लेकिन एड् डॉट नेट एक अन्य परफॉरमेन्स लाभ उपलब्ध कराता है जिसमें एडू डॉट नेट को डाटा टाइप रूपांतरण (conversions) की आवश्यकता नहीं होती है। एड् जो कम्पोनेण्ट के मध्य रिकॉर्ड सेट को ट्रांसमीट करने के लिए कॉम मारशलिंग का उपयोग करते हैं को एडू डाटा टाइप को कॉम डाटा टाइप्स में बदलने की आवश्यकता पड़ती है।
6- फायरवॉल को भेदना (Penetrating Firewalls) – फायरवॉल असंयोजित एडू रिकॉर्डसेट को ट्रांस्पीट करने का प्रयास करने वाले कम्पोनेण्ट्स के साथ हस्तक्षेप करते हैं। याद रखें कि फायरवॉल को एच. टी. एम. एल. टेक्स्ट को पास होने देने के लिए सामान्यतः कनफिगर किया जाता है परन्तु ये कॉम मार्शलिंग जैसे सिस्टम स्तर के आग्रहों को पास करने से रोकता है क्योंकि कम्पोनेण्ट्स एक्स. एम. एल. का उपयोग कर एडू डॉट नेट डाटयसेट्स का आदान प्रदान करते हैं। फायरवॉल डाटासेट्स को पास करने में हस्तक्षेप नहीं करते हैं।