

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Babelfish 支援 XML 資料類型方法
<a name="babelfish-xml-datatype-methods"></a>

從 5.4.0 版開始，Babelfish 現在支援預存程序 sp\$1xml\$1preparedocument 和 sp\$1xml\$1removedocument、列集函數 OPENXML() 和 xml dataype 方法 .VALUE()。透過這些函數和程序，查詢 XML 資料變得更加容易。

## 了解 XML 程序與方法
<a name="babelfish-xml-datatype-methods-overview"></a>
+ **sp\$1xml\$1preparedocument** – 程序 sp\$1xml\$1preparedocument 剖析指定為輸入的 XML 文字，並將控點傳回至本文件。此控制代碼在工作階段期間或直到 sp\$1xml\$1removedocument 移除為止有效。
+ **sp\$1xml\$1removedocument** – 程序 sp\$1xml\$1removedocument 會使程序 sp\$1xml\$1preparedocument 建立的控制代碼失效。
+ **OPENXML()** – OPENXML 透過 XML 文件提供資料列集檢視。由於 OPENXML 是資料列集提供者，而且會傳回一組資料列，因此我們可以在 FROM 子句中使用 OPENXML，就像使用任何其他資料表、檢視或資料表值函數一樣。
+ **VALUE()** – XML 資料類型方法 VALUE() 用於從存放在 xml 類型資料欄、參數或變數中的 XML 執行個體擷取值。

## Babelfish XML 程序與方法的限制
<a name="babelfish-xml-datatype-methods-limitations"></a>
+ Babelfish 僅支援 OPENXML() 的第二個引數 （即 ROWPATTERN) 的 XPATH 1.0 語法。
+ OPENXML() 目前不支援中繼屬性和旗標 8。
+ Babelfish 僅支援 VALUE() 資料類型方法的第一個引數 （即 XQuery) 的 XPATH 1.0 語法。