2010-08-26 9 views
5

एक्सएमएल क्या है और यह कैसे डेटाबेस में प्रयोग किया जाता है? अगर यह होमवर्क असाइनमेंट की तरह दिखता है, तो यह है।एक्सएमएल और डेटाबेस में इसके उपयोग

+0

http://www.oracle.com/technetwork/articles/quinlan-xml-095823.html – abhi

उत्तर

2

डेटाबेस अक्सर अनुप्रयोग जो एक वास्तविक डेटाबेस स्कीमा के लिए इसे बाहर serialise नहीं करना चाहती के लिए एक्सएमएल के ब्लॉक स्टोर करने के लिए उपयोग किया जाता है। लेकिन आम तौर पर बोलते हुए, डेटाबेस में एक्सएमएल का उपयोग नहीं किया जाता है।

इसका अर्थ क्योंकि डेटाबेस डेटा जहां XML के रूप में एक नास्तिक तरीके से प्रसारित करने के बारे में वास्तव में है संग्रहीत करने के बारे रहे हैं।

(सरलीकृत) आम तौर पर क्या होता है आवेदन एक बदल देता एक XML धारा जो आवेदन बी आवेदन बी को प्रेषित किया जाता है में डेटाबेस एक से डेटा तो SQL कथन जो डेटाबेस बी में रिकॉर्ड बनाने की एक श्रृंखला में एक्सएमएल परिवर्तित करता है

अन्य परिदृश्यों के बहुत सारे हैं, लेकिन यह आप एक सामान्य विचार देता है।

+0

धन्यवाद इस मदद की। – user431372

0

सामान्य में, डेरेक के जवाब का अंक के सबसे लागू होते हैं।

मैं निश्चित रूप से अधिक डेटाबेस में XML उपयोग करने से पहले दो बार सोचना किया जाएगा।

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

इसलिए, यदि आप एक स्तर फ़ोल्डर पदानुक्रम या शायद एक संगठनात्मक पदानुक्रम, जो दोनों के स्वभाव में श्रेणीबद्ध हैं स्टोर करने के लिए होने की तरह कुछ के पार चलो, यह कभी कभी बेहतर एक्सएमएल के रूप में यह स्टोर करने के लिए है। डाटाबेस आमतौर पर सामान्य भंडारण तंत्र होता है और चूंकि यह परिवर्तनों को सिंक्रनाइज़ करना आसान बनाता है, इसलिए यह डेटा डीबी में संग्रहीत किया जाता है, हालांकि इसे संभावित रूप से एक फ्लैट फ़ाइल के रूप में भी संग्रहीत किया जा सकता है।

अधिकांश संबंधपरक डेटाबेस nowdays इसलिए जहां डेटा/अद्यतन चयनित नोड्स आदि क्वेरी करने के लिए T-SQL का उपयोग कर सकते एक्सएमएल समर्थन का एक बहुत की पेशकश

पुन: एक्सएमएल क्या है - शुरुआत देखने के लिए here

+0

शेन में बहुत बहुत धन्यवाद। – user431372

1

Xml (एक्सटेंसिबल मार्कअप लैंग्वेज) लचीलापन, सादगी और इंटरनेट पर प्रयोज्य पर जोर देने के साथ, एक मशीन पठनीय प्रारूप में एन्कोडिंग दस्तावेज़ों के लिए एक मार्क-अप भाषा है।

अन्य एन्कोडिंग पर इसका मुख्य लाभ अंतर कर रहे हैं - कई प्रोग्रामिंग परिवेशों पढ़ सकते हैं और एक्सएमएल पार्स करने की क्षमता है, और यह मानव पठनीय होने का लाभ है। इस कारण से एक्सएमएल आमतौर पर डेटा परिवहन (या इंटरनेट पर) संचार करते समय उपयोग किया जाता है।

  • RSS, एक प्रोटोकॉल अक्सर अद्यतन सामग्री के फ़ीड प्रकाशित करने के लिए प्रयोग किया है:

    Wikipedia page on xml एक बहुत अधिक विशेष जानकारी, तथापि एक्सएमएल के विभिन्न उपयोगों के कुछ उदाहरण हैं है।

  • XHTML, एचटीएमएल
  • SOAP (सिम्पल ऑब्जेक्ट एक्सेस प्रोटोकॉल) का एक विस्तार, एक प्रोटोकॉल आमतौर पर वेब सेवाओं में की संरचना के बारे में जानकारी के लिए इस्तेमाल किया

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

कैसे xml डेटाबेस में उपयोग किया जाएगा - एक डेटाबेस अपने क्लाइंट को डेटा एक्सएमएल प्रारूप में बेनकाब करने या क्लाइंट से डेटा को एक्सएमएल प्रारूप में स्वीकार करने का विकल्प चुन सकता है। किसी भी तालिका में रिकॉर्ड के रूप में एक्सएमएल डेटा के "ब्लॉब्स" को स्टोर करने के लिए डेटाबेस का भी उपयोग किया जा सकता है, हालांकि यह उस XML की सामग्री के आधार पर डेटाबेस से पूछना मुश्किल है।

+0

धन्यवाद Kragen, यह एक बहुत – user431372

1

डेरेक, सेन और क्रागेन की पोस्ट में सभी सही हैं, लेकिन मैं इसे एक कदम आगे ले जाना चाहता हूं।

चूंकि एक्सएमएल स्वाभाविक रूप से एक स्कीमा (मार्कअप का प्रतिनिधित्व करने के लिए परिभाषित करने के लिए एक स्कीमा) का उपयोग करता है, इसलिए एक्सएमएल को किसी भी अन्य डेटाबेस की अवधारणा के समान डेटाबेस माना जा सकता है।

आप एक्सएमएल (एक एक्सएसडी) के लिए अपनी खुद की स्कीमा परिभाषित कर सकते हैं और फिर अपने चुने हुए एक्सएमएल प्रारूप में डेटा जारी रख सकते हैं।

सच है, आप SQL डेटाबेस में टेक्स्ट-फ़ील्ड में एक्सएमएल का एक समूह भरना चुन सकते हैं, लेकिन आप डेटाबेस के रूप में स्वयं भी एक्सएमएल का उपयोग कर सकते हैं क्योंकि डेटाबेस एक स्कीमा में डेटा को बनाए रखने से ज्यादा कुछ नहीं हो सकता है उस डेटा को पकड़ने के लिए डिज़ाइन किया गया। यहां एक ग्रे क्षेत्र है जहां एक सरल कॉमा-सीमांकित टेक्स्ट फ़ाइल को डेटाबेस माना जा सकता है यदि आपने सीएसवी प्रारूप में डेटा स्टोर और एक्सेस करने के लिए एक प्रोग्राम लिखा था।

वैसे भी, XML के साथ, वहाँ पहले से ही मानकों के लिए परिभाषित कर रहे हैं कि कैसे स्कीमा (XSD मानकों) में परिभाषित किया जा सकता है और पारसर्स उन मानकों के अनुरूप तो आप डेटा डाल दिया और excoded दस्तावेजों के बाहर डेटा पढ़ सकते हैं निर्माण कर रहे हैं एक नामित स्कीमा (एक्सएसडी) के लिए एक्सएमएल फिटिंग में।

तो मुझे लगता है कि जब आप कैसे एक्सएमएल एक डेटाबेस में प्रयोग किया जाता है के बारे में पूछते हैं, मुझे लगता है कि मेरा पहला सवाल वास्तव में क्या आप "डेटाबेस" मतलब है है?

क्या आप एक SQL डेटाबेस के विशिष्ट विक्रेता कार्यान्वयन का अर्थ हैं? या शायद "डेटाबेस" एक तार्किक अवधारणा के रूप में? या शायद एक विशिष्ट प्रकार के डेटाबेस के साथ बातचीत बढ़ाने के लिए एक्सएमएल का उपयोग कैसे किया जा सकता है?

इस प्रकार के उत्तरों में से, मुझे लगता है कि हम सभी का जवाब "डेटाबेस" के आपके अलग-अलग विचार के साथ जवाब दे रहा है।

XQuery, उदाहरण के लिए एक मानकीकृत तरीके से "क्वेरी" एक्सएमएल फाइल का एक सेट में डेटा, या एक पूरी तरह से अलग संदर्भ XML में इस्तेमाल किया जा सकता करने के लिए इस्तेमाल किया जा सकता आसानी से अंदर और बाहर Oracle या SQL डेटा पास करने के सर्वर क्योंकि माइक्रोसॉफ्ट और ओरेकल इंटरफेस प्रदान करते हैं जो एक्सएमएल मानकों के अनुरूप हैं।

+0

आपके उत्तर के लिए धन्यवाद hepls। – user431372

0

ठीक है, जब मैंने कहा कि "डेटाबेस" मैं आम तौर पर द्वारा बनाई गई डेटाबेस की चर्चा करते हुए कर रहा हूँ, और, एक संबंधपरक

एक्सएमएल फाइल हाँ आप निश्चित रूप से उपयोग कर सकते हैं के रूप में इस तरह के एसक्यूएल सर्वर ओरेकल के रूप में इंजन, आदि के माध्यम से पहुँचा डेटा भंडारण के साधन।यह अक्सर डेटा की बहुत छोटी और सरल मात्रा के लिए किया जाता है। लेकिन यह एक वास्तुशिल्प निर्णय होता है जिसे अक्सर डेवलपर को एक्सएमएल फाइलों को पढ़ने और लिखने, और/या उस डेटा के भविष्य के उपयोग के संबंध में एक रिलेशनल डेटाबेस को लागू करने के लिए प्रयास करने की आवश्यकता होती है। कभी-कभी एक्सएमएल फ़ाइल का उपयोग करना आसान होता है, कभी-कभी यह नहीं होता है।

0

संबंधपरक डेटा से एक्सएमएल उत्पन्न करना अपेक्षाकृत आसान है। उदाहरण: संबंध डेटा से एटम फ़ीड उत्पन्न करना। उदाहरण: http://h2database.googlecode.com/svn/trunk/h2/src/test/org/h2/samples/newsfeed.sql

XML या HTML दस्तावेज़ (या स्निपेट) अक्सर जमा हो जाती है के रूप में डेटाबेस में (प्रोसेसिंग) के बिना है।

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