Categorias:

Funções de dados semiestruturados (Análise)

CHECK_XML

Verifica a validade de um documento XML. Se a cadeia de caracteres de entrada for NULL ou um documento XML válido, a saída será NULL. No caso de um erro de análise do XML, a cadeia de caracteres de saída contém a mensagem de erro.

Consulte também:

PARSE_XML

Sintaxe

CHECK_XML( <string_containing_xml> [ , <disable_auto_convert> ] )
Copy

Argumentos

Obrigatório:

string_containing_xml

Esta expressão deve ser avaliada como um VARCHAR. O VARCHAR deve conter um XML válido.

Opcional:

disable_auto_convert

Especifique o mesmo valor que você passa para a função PARSE_XML.

Padrão: FALSE

Retornos

O tipo de dados do valor retornado é VARCHAR.

Exemplos

Mostrar a saída da função quando o XML é válido

SELECT CHECK_XML('<name> Valid </name>');
+-----------------------------------+
| CHECK_XML('<NAME> VALID </NAME>') |
|-----------------------------------|
| NULL                              |
+-----------------------------------+
Copy

Mostrar a saída da função quando o XML é inválido

SELECT CHECK_XML('<name> Invalid </WRONG_CLOSING_TAG>');
+--------------------------------------------------+
| CHECK_XML('<NAME> INVALID </WRONG_CLOSING_TAG>') |
|--------------------------------------------------|
| no opening tag for </WRONG_CLOSING_TAG>, pos 35  |
+--------------------------------------------------+
Copy

Localizar registros com XML inválidos

SELECT xml_str, CHECK_XML(xml_str)
    FROM my_table
    WHERE CHECK_XML(xml_str) IS NOT NULL;
Copy