में कनवर्ट करें मुझे एमएसएसएलएल 2008 का उपयोग करने का अनुभव है और मुझे हाल ही में एमएसएसएलएल से ओरेकल 10 जी तक जाना पड़ा। जिन लोगों ने (ओरेकल) तालिका तैयार की है, जिनके पास कॉलम है, उन्हें डेटा निकालने की आवश्यकता है, उन्हें एक्सएमएल के लिए BLOB
टाइप कॉलम का उपयोग करने की आवश्यकता है।ऑरैक ब्लॉब को एक्सएमएल प्रकार
एमएसएसक्यूएल में आप बस अपने XML स्ट्रिंग को XML
प्रकार में संग्रहीत कर चुके थे या VARCHAR(MAX)
का उपयोग किया था। एक कॉलम myColumn
कहा जाता है जो एक VARCHAR(MAX)
<ROOT><a>111</a></ROOT>
युक्त आप एक XML
प्रकार आप बस की तरह कुछ लिखते थे करने के लिए VARCHAR(MAX)
प्रकार परिवर्तित करने के लिए चाहता है तो है के साथ एक मेज myTable
मान लें:
SELECT CONVERT(XML, myColumn) FROM myTable
यदि आप चाहते थे, तो आप XQuery इस्तेमाल कर सकते हैं परिवर्तित स्तंभ से डेटा प्राप्त करने, इसलिए जैसे:
SELECT CONVERT(XML, myColumn).query('/ROOT/a')
आप Oracle 10g में एक ही बात कैसे पूरा करता है, तो MyColumn एक BLOB
था होता है, एक संग्रहीत प्रक्रिया लिखने के लिए, लेकिन अभी भी हूँ बिना यह पुन: प्रयोज्य है? बीएलओबी में पाठ UFT-8
है।
मैं वास्तव में आपकी सहायता की सराहना करता हूं, क्योंकि मुझे जल्दबाजी में इसकी आवश्यकता है।
हाय Davmos आप अपनी प्रतिक्रिया के लिए बहुत बहुत धन्यवाद, मुझे लगता है कि समाधान है कि आप दे दी है बाहर कोशिश कर रहा हूँ। आपको बताएगा कि यह कैसे काम करता है। – user1279734
हाय डेवमोस, मैं एक्सएमटीटीपीई के बजाए क्लॉब बैक ले रहा हूं, मुझे एक्सएमएल प्रकार कैसे मिलता है? – user1279734
हाय @ user1279734, उपरोक्त फ़ंक्शन केवल 'XMLTYPE' लौटा सकता है। आप इसे कैसे बुला रहे हैं – davmos