xml - रबन - संबंधपरक डेटाबेस प्रबंधन प्रणाली




क्या पीएल/एसक्यूएल में एक तरीका है जो एक्सएमएल अनुरूप पाठ को कनवर्ट/एन्कोड करता है? (4)

एक्सएमएल डाटा के जोड़ तोड़ने के लिए ओरेकल के बाद के संस्करणों में एक एक्सएमएल पैकेज में बनाया गया है।
उदाहरण के लिए, क्या ऐसा ऐसा मामला है जो आपके सहकर्मी क्या करना चाहता है ?:

SELECT DBMS_XMLGEN.getXML('SELECT * FROM emp') FROM dual;

https://code.i-harness.com

मेरे पास एक सहयोगी है, जिसे पीएल / एसक्यूएल पद्धति से पाठ को एक्सएमएल अनुरूप टेक्स्ट में बदलने की जरूरत है, क्योंकि वह पाठ टेम्पलेट को अपडेट करके एक्सेल स्प्रैडशीट का निर्माण कर रहे हैं।

क्या पीएल / एसक्यूएल में एक तरीका है जो एक्सएमएल अनुरूप पाठ को कनवर्ट / एन्कोड करता है?


हामिस्स्कैन विकल्प आसान और स्पष्ट है, लेकिन यह ओरेकल रूपों में काम नहीं करता है, मैंने इसे और कुछ का उपयोग करने के लिए बहुत कुछ करने की कोशिश की ... आप XML को मैन्युअल रूप से जनरेट कर सकते हैं, इस तरह से कुछ का उपयोग कर

utl_file.put_line_nchar (file_id, 'xml संस्करण = 1.0 "एन्कोडिंग =" यूटीएफ -8 "');

utl_file.put_line_nchar (file_id, 'प्रारंभ');

- लूप के लिए जहां आप अपनी टैग को परिभाषित करते हैं

utl_file.put_line_nchar (file_id, '/ प्रारंभ');

नोट: संपादक मुझे XML में <> चिह्न और टैग शीर्षक डाल करने की अनुमति नहीं देता


ठीक है, अगर आप एक्सएमएल वर्णों को परिवर्तित करना चाहते हैं, तो आप ऐसा कुछ करना चाहेंगे ...

  outgoing_text := DBMS_XMLGEN.CONVERT(incoming_text)

जहां outgoing_text टेक्स्ट और आवर्तक टेक्स्ट VARCHAR2 या CLOB दोनों होते हैं

आप एक दूसरी तर्क निर्दिष्ट कर सकते हैं, लेकिन यह DBMS_XMLGEN.ENTITY_ENCODE लिए डिफ़ॉल्ट है ... यह DBMS_XMLGEN.ENTITY_DECODE को दूसरी तर्क के रूप में पारित करके एक्सएमएल संस्थाओं को भी डीकोड कर सकता है।


Dbms_xmlgen के अतिरिक्त, आप एसक्यूएल विधि, एक्सएमलेमेंट का उपयोग कर सकते हैं और फिर मूल्य को वापस निकाल सकते हैं।

select extract(xmlelement("mytest",my_variable),'mytest/text()') from dual;

एक्सएमलेमेंट फ़ंक्शन टेक्स्ट एक्सएमएल को आज्ञाकारी बना देगा, फिर एक्स्ट्रक्ट फ़ंक्शन का इस्तेमाल करेगा, यह टेक्स्ट को उतना ही निकालेगा जैसा कि है। (ध्यान दें: एक्सट्रैक्ट वैल्यू फ़ंक्शन पाठ को गैर-एक्सएमएल आज्ञाकारी संस्करण में वापस बदल देगा।)





plsql