2008-10-10 18 views

उत्तर

7

मैं "एक DataTable में परिणाम लोड के बजाय" मान लें कि आपके मतलब है?

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

नुकसान: आप कैसे डेटा लोड किया जाता है का नियंत्रण है, जो यह आसान है एक गलती करते हैं करने के लिए और वहाँ ऐसा करने के लिए अधिक काम का मतलब कर रहे हैं।

यहां आपका उपयोग केस क्या है? क्या आपके पास यह मानने का एक अच्छा कारण है कि एक सामान्य (या दृढ़ता से टाइप की गई) तालिका तालिका का उपयोग करने का ओवरहेड प्रदर्शन को काफी नुकसान पहुंचा रहा है? अगर मैं ऐसा करने का एक अच्छा कारण था तो मैं केवल SqlDataReader का उपयोग करता हूं।

+0

मैं पूरी तरह से आपके उत्तर, जॉन से सहमत हूं। आपके सरल उत्तर के लिए धन्यवाद। –

1

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

लेकिन अगर आप एक समय में कई रिकॉर्ड, 1 संसाधित करने की जरूरत है, SqlDataReader का उपयोग करें।

1

लाभ: तेज, कम स्मृति।

नुकसान: जुड़े रहते हैं, पाठक को बंद करने के याद रखना चाहिए चाहिए।

3

महत्वपूर्ण लाभ यह स्पष्ट रूप से गति है - कि मुख्य कारण यह है कि आप एक SqlDataReader निर्णय लेना होगा है।

एक संभावित नुकसान पहले से ही उल्लेख नहीं किया गया है कि SQLDataReader केवल आगे है, इसलिए आप अनुक्रम में केवल एक बार रिकॉर्ड के माध्यम से जा सकते हैं - यह उन चीजों में से एक है जो इसे इतनी तेज़ होने की अनुमति देता है। कई मामलों में यह ठीक है लेकिन यदि आपको एक से अधिक बार रिकॉर्ड्स पर पुन: प्रयास करना है या डेटा जोड़ना/संपादित करना/हटाना है तो आपको विकल्पों में से एक का उपयोग करने की आवश्यकता होगी।

यह भी जुड़ा रहता है जब तक आप सभी रिकॉर्ड के माध्यम से काम किया है और पाठक (जाहिर है, आप इसे पहले बंद करने के लिए विकल्प चुन सकते हैं, लेकिन तब आप शेष रिकॉर्ड के किसी भी उपयोग नहीं कर सकते) को बंद कर दिया है। यदि आप रिकॉर्ड्स पर किसी भी लंबी प्रोसेसिंग करने जा रहे हैं जैसे आप उन्हें फिर से करते हैं, तो आप पाएंगे कि आप डेटाबेस से अन्य कनेक्शन को प्रभावित करते हैं।

-1

डेटा संगत नहीं हो सकता है और आप अपने कार्यों के नियंत्रण में नहीं हैं कि क्यों सड़क के नीचे दूध आदमी को उसके साथ डेटा लेना पड़ता है या नहीं तो वे डेटा से क्रैक हो जाते हैं और पुलिसकर्मी नहीं ले जाएगा कोई भी डेटा क्योंकि उन्हें लगता है कि अन्य लोगों के डेटा को रखने में गलत है और ऐसा करने में गलत है। एक लड़की है जो शेफील्ड में रहती है और वह बाहर जाने और घर में जितनी बार खेलना पसंद करती है, यही कारण है कि मैं उससे बात करना पसंद नहीं करता क्योंकि उसके माता-पिता और उसके अन्य फव्वारे को शांति के बागों में ले जाया जाता है जो एक जगह है कि हर कोई गाना और रहना पसंद करता है। आम तौर पर मशहूर सेलेबियों को अर्नौन डाथेर लटका दिया जाता है लेकिन हमेशा शीर्ष सुरक्षा होती है क्योंकि हम उन्हें समाप्त होने के लिए नीचे नहीं जाना चाहते हैं। केके अब आपको देखता है मुझे पश्चिम की शांति में 2 जाने और ठंडा करने की जरूरत है !!! £ "$$$ मोनी मैन $$$$

संबंधित मुद्दे