2010-08-31 11 views
9

मैं डाटा पढ़ने में साथ Excel 2007 फ़ाइल काम करने की जरूरत है। कि जिसके लिए एक ही है कि ऐसा करने के लिए सबसे अच्छा तरीका है:कौन सा एक बेस्ट OLEDB या एक्सेल वस्तु या डेटाबेस

  1. OLEDB प्रदाता का उपयोग करना
  2. एक्सेल इंटरॉप वस्तु
  3. डाटाबेस को एक्सेल डेटा डंप और का उपयोग प्रक्रिया

कृपया मुझे चुनने के लिए मार्गदर्शन ।

+1

आपका प्रश्न काफी अस्पष्ट है। यहां SO प्रश्न पूछने के बारे में पढ़ें: http://tinyurl.com/so-hints – Oded

उत्तर

17

यहाँ मेरी राय हैं। OLEDB प्रदाता

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

2। एक्सेल इंटरॉप वस्तु

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

3। डाटाबेस के लिए और का उपयोग प्रक्रिया

एक्सेल डेटा डंप डेटाबेस किस तरह डंप आपके मन में है पर निर्भर करता है, और आप हाथ में एक डाटाबेस सिस्टम है। आप एमएस एक्सेस करने की सोच रहे हैं, तो यह आंतरिक जेट इंजन फिर, एक ही पेशेवरों और ऊपर दृष्टिकोण 1 के रूप में विपक्ष के साथ प्रयोग करेंगे।

अन्य विकल्प:

4। आपको आवश्यक डेटा को पढ़ने और इसे टेक्स्ट फ़ाइल में लिखने के लिए एक एक्सेल वीबीए मैक्रो लिखें। सी # प्रोग्राम से टेक्स्ट फ़ाइल पढ़ें। प्रो: मेटा सूचना तक पहुंचने में समान लचीलापन के साथ, दृष्टिकोण 2 की तुलना में बहुत तेज़। कॉन: आपको अपने प्रोग्राम को वीबीए भाग और सी # भाग में विभाजित करना होगा। और आपको अपनी मशीन पर एमएस एक्सेल की आवश्यकता है।

5। इस कार्य के लिए किसी तृतीय पक्ष लाइब्रेरी/घटक का उपयोग करें। नौकरी, मुफ्त और वाणिज्यिक लोगों के लिए पुस्तकालयों के बहुत सारे हैं। बस Google से पूछें, या यहां SO पर खोजें।उन libs के बहुत सारे मशीन पर एमएस एक्सेल की आवश्यकता नहीं है, और यदि आप सर्वर प्रक्रिया के हिस्से के रूप में डेटा निकालने जा रहे हैं तो वे आमतौर पर सबसे अच्छा विकल्प हैं।

+0

इसके अलावा आप बिना किसी Office के एक्सेल इंटरऑप ऑब्जेक्ट का उपयोग कर सकते हैं Office – BornToCode

+0

@ बोर्नटोकोड: टिप्पणी के लिए धन्यवाद, मैंने तदनुसार अपना जवाब संपादित किया। –

2

विकल्प 1 और 2 लगभग हमेशा दर्द में एक अभ्यास, कोई फर्क नहीं पड़ता कि कैसे आप सवाल पूछ सकते हैं।

आप SSIS एक डेटाबेस में डेटा स्थानांतरित करने के लिए उपयोग कर सकते हैं, और कहा कि अगर सूट अन्य आवश्यकताओं की वजह से अपनी आवश्यकताओं, वह भी एक अच्छा विकल्प है, तो।

लेकिन पसंदीदा विकल्प Excel 2007 और बाद के लिए कार्यालय Open XML उपयोग करने के लिए आमतौर पर है। आपके पास विकल्प 2 के साथ कोई भी COM सिरदर्द नहीं है, और आपके पास विकल्प 1 के साथ पंक्ति प्रकार अनुमान लगाने के साथ कोई भी समस्या नहीं है।

अधिक ध्यान से तैयार किए गए प्रश्न के साथ, आप एक बेहतर उत्तर प्राप्त कर सकते हैं, हालांकि।

1:

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