Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle UpdateXML () XML संरचना को बदलता है?

मुझे लगता है कि आप खाली टेक्स्ट को अस्थायी मान से बदलकर, अन्य सभी टेक्स्ट को अपडेट करके और फिर अस्थायी मान को शून्य से बदलकर समस्या से बच सकते हैं।

मुझे XPath की समझ नहीं है, ऐसा करने का शायद एक बेहतर तरीका है, लेकिन यह काम करता प्रतीत होता है:

SELECT
    --#3: Replace the temporary value with null, this keeps the start and end tag
    UpdateXML(
        --#2: Replace everything but the temporary value
        UpdateXML(
            --#1: Replace empty text with a temporary value
            UpdateXML(xmlData, '/TEST/VALUE[not(text())]', '<VALUE>TEMPORARY VALUE</VALUE>')
        ,'/TEST/VALUE[text()!="TEMPORARY VALUE"]/text()', 'hello')
    ,'/TEST/VALUE[text()="TEMPORARY VALUE"]/text()', null) examle
FROM (SELECT XMLType('<TEST><VALUE>hi</VALUE><VALUE>hola</VALUE><VALUE></VALUE></TEST>') as xmlData FROM DUAL);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एसक्यूएल लोडर कमांड निष्पादित करते समय त्रुटि होने पर रोलबैक कैसे करें?

  2. ORA-01008:सभी चर बाध्य नहीं हैं, जब वे सभी बाध्य हैं

  3. सॉफ्टवेयर इंजीनियरिंग में अधिकतम अंक प्राप्त करने वाले छात्र(छात्रों) का नाम खोजने के लिए एक प्रश्न लिखें। नाम के आधार पर परिणाम छाँटें

  4. plsql तालिका पैरामीटर के साथ अनाम ब्लॉक में मान कैसे पास करें

  5. Oracle डेटाबेस में PL/SQL पैकेज कैसे बनाएँ?