XML 資料修改語言 (XML DML)
適用於:SQL ServerAzure SQL 資料庫 Azure SQL 受控執行個體
XML 資料修改語言 (XML DML) 是 XQuery 語言的延伸。 如 W3C 所定義的,XQuery 語言缺少「資料操作」(DML) 的部份。 本主題中所介紹的 XML DML (同時也是 XQuery 語言),可提供功能完整的查詢及資料修改語言,讓您可以針對 xml 資料類型來使用。
XML DML 會將下列區分大小寫的關鍵字加入到 XQuery 中:
insert
delete
replace value of
如 XML 資料類型和資料行 (SQL Server) 中所述,您可以建立 xml 類型的變數和資料行,並將 XML 文件或片段指派給它們。 若要修改或更新這些 XML 執行個體,請執行下列動作:
使用 xml 資料類型的 modify() 方法 (xml 資料類型)。
在 modify() 方法內指定適當的 XML DML 陳述式。
請注意,有一些屬性不能被插入、刪除或修改它們的值。 例如:
若為具類型或不具類型的 xml,屬性為 xmlns、xmlns:* 和 xml:base。
若只為具類型的 xml,則屬性為 xsi:nil 及 xsi:type。
其他限制包括下列項目:
若為具類型或不具類型的 xml,則插入屬性 xml:base 會失敗。
若為具類型的 xml,則刪除及修改 xsi:nil 屬性會失敗。 若為不具類型的 xml,您可以刪除屬性或修改其屬性值。
若為具類型的 xml,則修改 xs:type 屬性的值會失敗。 若為不具類型的 xml,您可以修改屬性值。
在修改具類型的 XML 執行個體時,最後的格式必須是該類型的有效執行個體。 否則,就會傳回驗證錯誤。
另請參閱
insert (XML DML)
delete (XML DML)
replace value of (XML DML)
比較具類型的 XML 與不具類型的 XML
建立 XML 資料的執行個體
xml 資料類型方法