Partilhar via


Linguagem de modificação de dados XML (XML DML)

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de dados SQL no Microsoft Fabric

A Linguagem de Modificação de Dados XML (XML DML) é uma extensão da linguagem XQuery. Conforme definido pelo W3C, a linguagem XQuery não possui a parte de Manipulação de Dados (DML). O DML XML introduzido neste tópico, assim como a linguagem XQuery, fornece uma linguagem de consulta e modificação de dados totalmente funcional que pode ser usada contra o tipo de dado xml .

O DML ML adiciona as seguintes palavras-chave sensíveis a maiúsculas minúsculas ao XQuery:

  • Inserção

  • delete

  • substituir valor de

Como descrito em XML Data Type and Columns (SQL Server), pode criar variáveis e colunas do tipo xml e atribuir-lhes documentos ou fragmentos XML. Para modificar ou atualizar estas instâncias XML, faça o seguinte:

Note que existem alguns atributos que não podem ser inseridos, eliminados ou ter o seu valor modificado. Por exemplo:

  • Para xml tipado ou não tipado, os atributos são xmlns, xmlns:* e xml:base.

  • Para xml tipado apenas, os atributos são xsi:nil e xsi:type.

Outras restrições incluem as seguintes:

  • Para xml tipado ou não tipado, inserir o atributo xml:base falhará.

  • Para xml tipo, eliminar e modificar o atributo xsi:nil falha. Para XML não tipado, podes eliminar o atributo ou modificar o seu valor.

  • Para xml tipado, modificar o valor do atributo xs:type falhará. Para XML não tipado, podes modificar o valor do atributo.

Quando se modifica uma instância XML tipada, o formato final deve ser uma instância válida desse tipo. Caso contrário, é devolto um erro de validação.

Ver também

insert (XML DML)
delete (XML DML)
valor de substituição de (DML XML)
Comparar XML digitado com XML não tipado
Criar instâncias de dados XML
Métodos de Tipos de Dados XML