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

कैसे UPDATEXML () मारियाडीबी में काम करता है

मारियाडीबी में, UPDATEXML() एक अंतर्निहित फ़ंक्शन है जो एक्सएमएल मार्कअप के दिए गए टुकड़े के एक हिस्से को एक नए एक्सएमएल टुकड़े के साथ बदल देता है, फिर अपडेट किया गया एक्सएमएल देता है।

सिंटैक्स

वाक्य रचना इस प्रकार है:

UPDATEXML(xml_target, xpath_expr, new_xml)

कहां:

  • xml_target एक्सएमएल मार्कअप है जिसमें एक्सएमएल खंड है जिसे आप अपडेट करना चाहते हैं
  • xpath_expr विशिष्ट XML खंड है जिसे आप अपडेट करना चाहते हैं
  • new_xml एक्सएमएल खंड है जिसे आप बदलना चाहते हैं xpath-expr के साथ

उदाहरण

यहां एक बुनियादी उदाहरण दिया गया है:

SELECT
    UPDATEXML(
        '<pet><name>Wag</name><type></type></pet>', 
        '/pet/type', 
        '<type>Dog</type>'
        ) AS Result;

परिणाम:

+---------------------------------------------+
| Result                                      |
+---------------------------------------------+
| <pet><name>Wag</name><type>Dog</type></pet> |
+---------------------------------------------+

इस उदाहरण में, मूल XML मार्कअप में एक खाली <type> . है तत्व। हमने UPDATEXML() . का इस्तेमाल किया उस तत्व को अपडेट करने के लिए, ताकि उसमें सामग्री हो (Dog )।

अशक्त तर्क

पासिंग null किसी भी तर्क के लिए null returns लौटाता है :

SELECT 
    UPDATEXML('<pet></pet>', '/pet', null) AS a,
    UPDATEXML(null, '/pet', '<friend></friend>') AS b,
    UPDATEXML('<pet></pet>', null, '<friend></friend>') AS c,
    UPDATEXML(null, null, null) AS d;

परिणाम:

+------+------+------+------+
| a    | b    | c    | d    |
+------+------+------+------+
| NULL | NULL | NULL | NULL |
+------+------+------+------+

अनुपलब्ध तर्क

कॉलिंग UPDATEXML() तर्कों की गलत संख्या के साथ, या बिना कोई तर्क पारित किए त्रुटि उत्पन्न होती है:

SELECT UPDATEXML();

परिणाम:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'UPDATEXML'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 8 कार्य मारियाडीबी में एक तिथि से दिन वापस करने के लिए

  2. मारियाडीबी SYSTEM_USER () समझाया गया

  3. वे मान कैसे प्राप्त करें जिनमें मारियाडीबी में संख्याएं नहीं हैं

  4. गैलेरा क्लस्टर क्लाउड ऑफ़रिंग की तुलना करना:भाग एक अमेज़ॅन एडब्ल्यूएस

  5. मारियाडीबी में एक तिथि में एक महीना जोड़ने के 6 तरीके