카테고리:

반정형 및 정형 데이터 함수 (구문 분석)

CHECK_XML

XML 문서의 유효성을 확인합니다. 입력 문자열이 NULL 또는 유효한 XML 문서인 경우, 출력은 NULL입니다. XML 구문 분석 오류의 경우, 출력 문자열에 오류 메시지가 포함됩니다.

참고 항목:

PARSE_XML

구문

CHECK_XML( <string_containing_xml> [ , <disable_auto_convert> ] )
Copy
CHECK_XML( STR => <string_containing_xml>
  [ , DISABLE_AUTO_CONVERT => <disable_auto_convert> ] )
Copy

인자

필수:

string_containing_xml . OR . STR => string_containing_xml

이 식은 VARCHAR로 평가되어야 합니다. VARCHAR에는 유효한 XML이 포함되어야 합니다.

선택 사항:

disable_auto_convert . OR . DISABLE_AUTO_CONVERT => disable_auto_convert

PARSE_XML 함수에 전달하는 것과 동일한 값을 지정합니다.

기본값: FALSE

반환

반환된 값의 데이터 타입은 VARCHAR입니다.

사용법 노트

  • 이름 또는 위치로 모든 인자를 지정해야 합니다. 일부 인자는 이름으로, 다른 인자는 위치로 지정할 수는 없습니다.

    이름으로 인자를 지정할 때 인자 이름 주위에 큰따옴표를 사용할 수 없습니다.

XML이 유효할 때 함수의 출력 표시

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

XML이 유효하지 않을 때 함수의 출력 표시

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

유효하지 않은 XML이 있는 레코드 찾기

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