XML値をシリアル化して、その文字列表現にします。
構文
XMLSERIALIZE ( { DOCUMENT | CONTENT } XML_value_expr [ AS data_type ] [ ENCODING XML_encoding_name ] [ WITH [NO] BOM ] [ VERSION 'char_str_literal' ] [ { INCLUDING | EXCLUDING } XMLDECLARATION ] [ NO INDENT | INDENT [ SIZE = integer ] ] )
- DOCUMENT
- XML値はXML文書ノードです。
- CONTENT
- XML値はXQuery文書ノードです。
- XML_value_expr
- XML型のインスタンス。
- data_type
- VARCHAR、CLOB、VARBYTE、またはBLOB。data_typeがVARCHARまたはCLOBの場合、文字セットをLATINまたはUNICODEとして指定できます。
- XML_encoding_name
Teradata Databaseによってサポートされるエンコーディングの識別子(ISO-8859-1など)。
XMLエンコーディング指定を指定できるのは、要求するデータ型がVARBYTEまたはBLOBの場合のみです。
Teradata XMLでサポートされるエンコーディングの名前を参照してください。
- WITH [ NO ] BOM
結果にバイト オーダー マークを追加するかどうか。
WITH BOMディレクティブによりバイト オーダー マークが生成されるのは、以下の場合です。- ターゲット型がVARBYTEまたはBLOBであり、かつエンコーディングがUnicodeエンコーディング(UTF-8、UTF-16、またはUTF-32/UCS4)の場合
- ターゲット型がUNICODE CHARACTER SETのVARCHARまたはCLOBであり、かつクライアント文字セットがUNICODEの場合
その他のすべての場合については、WITH BOM宣言があってもバイト オーダー マークは生成されません。
WITH BOMオプションは、UNICODEクライアント文字セットでのみ指定してください。
- VERSION 'char_str_literal'
- シリアル化で準拠するXMLのバージョン。有効な値は、次のとおりです。
- '1.0'
- '1.1'
指定されていない場合、または無効な値が指定されている場合のデフォルトは'1.0'です。
- INCLUDING XMLDECLARATION or EXCLUDING XMLDECLARATION
- シリアル化の先頭にXML宣言(<?xml..?>)が出現するかどうか。
- NO INDENT
- インデントを指定しません。
- INDENT [SIZE = integer]
- インデントおよびインデントの量を指定します。デフォルトのサイズは4です。