MariaDB
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> MariaDB

Cách UPDATEXML () hoạt động trong MariaDB

Trong MariaDB, UPDATEXML() là một hàm tích hợp thay thế một phần của một phân đoạn đánh dấu XML nhất định bằng một phân đoạn XML mới, sau đó trả về XML đã cập nhật.

Cú pháp

Cú pháp như sau:

UPDATEXML(xml_target, xpath_expr, new_xml)

Ở đâu:

  • xml_target là đánh dấu XML có chứa phân đoạn XML mà bạn muốn cập nhật
  • xpath_expr là phân đoạn XML cụ thể mà bạn muốn cập nhật
  • new_xml là phân đoạn XML mà bạn muốn thay thế xpath-expr với

Ví dụ

Đây là một ví dụ cơ bản:

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

Kết quả:

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

Trong ví dụ này, đánh dấu XML ban đầu có <type> trống thành phần. Chúng tôi đã sử dụng UPDATEXML() để cập nhật phần tử đó, để phần tử đó chứa nội dung (Dog ).

Đối số rỗng

Chuyển null đối với bất kỳ đối số nào trả về null :

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;

Kết quả:

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

Thiếu đối số

Gọi UPDATEXML() với số lượng đối số sai hoặc không chuyển bất kỳ đối số nào dẫn đến lỗi:

SELECT UPDATEXML();

Kết quả:

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. Cách NOT REGEXP hoạt động trong MariaDB

  2. Cải thiện hiệu suất phụ trợ Phần 2/3:Sử dụng chỉ mục cơ sở dữ liệu

  3. MariaDB JSON_VALUE () Giải thích

  4. Cách SIGN () hoạt động trong MariaDB

  5. So sánh các sản phẩm cung cấp trên đám mây cụm Galera:Phần thứ ba Microsoft Azure