- Categorias:
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.
Sintaxe¶
CHECK_XML( <string_containing_xml> [ , <disable_auto_convert> ] )
CHECK_XML( STR => <string_containing_xml>
  [ , DISABLE_AUTO_CONVERT => <disable_auto_convert> ] )
Argumentos¶
Obrigatório:
- string_containing_xml. OR .- STR => string_containing_xml
- Especifique uma expressão que seja avaliada como um valor VARCHAR que contenha XML válido. 
Opcional:
- disable_auto_convert. OR .- DISABLE_AUTO_CONVERT => 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.
Notas de uso¶
- Você deve especificar todos os argumentos por nome ou por posição. Você não pode especificar alguns dos argumentos por nome e outros argumentos por posição. - Ao especificar um argumento por nome, você não pode usar aspas duplas no nome do argumento. 
Exemplos¶
Os exemplos a seguir usam a função CHECK_XML.
Mostrar a saída da função quando o XML é válido¶
SELECT CHECK_XML('<name> Valid </name>');
+-----------------------------------+
| CHECK_XML('<NAME> VALID </NAME>') |
|-----------------------------------|
| NULL                              |
+-----------------------------------+
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  |
+--------------------------------------------------+
Localizar registros com XML inválidos¶
SELECT xml_str, CHECK_XML(xml_str)
  FROM my_table
  WHERE CHECK_XML(xml_str) IS NOT NULL;