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

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do Azure

A linguagem de Modificação de Dados XML (XML DML) é uma extensão da linguagem XQuery. Como definido por W3C, a linguagem XQuery é desprovida da parte de Manipulação de Dados (DML). A XML DML apresentada neste tópico, além da linguagem XQuery, oferece uma consulta totalmente funcional e uma linguagem de modificação de dados que pode ser usada com o tipo de dados xml.

A XML DML acrescenta as seguintes palavras-chave que diferenciam maiúsculas e minúsculas à XQuery:

  • insert

  • delete

  • replace value of

Conforme descrito em Tipo de dados e colunas XML (SQL Server), você pode criar variáveis e colunas do tipo xml e atribuir documentos ou fragmentos XML a elas. Para modificar ou atualizar essas instâncias de XML, faça o seguinte:

Observe que há alguns atributos que não podem ser inseridos, excluídos ou ter seus valores modificados. Por exemplo:

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

  • Somente para xml tipado, os atributos são xsi:nil, and xsi:type.

Outras restrições incluem o seguinte:

  • Para xml tipado ou não tipado, haverá falha na inserção do atributo xml:base.

  • Para xml tipado, haverá falha na exclusão e modificação do atributo xsi:nil. Para xml não tipado, você poderá excluir o atributo ou modificar seu valor.

  • Para xml tipado, haverá falha na modificação do valor do atributo xs:type. Para xml não tipado, você poderá modificar o valor do atributo.

Quando você modifica uma instância XML digitada, o formato final deve ser uma instância válida desse tipo. Caso contrário, será retornado um erro de validação.

Consulte Também

inserir (XML DML)
excluir (XML DML)
substituir o valor de (XML DML)
Comparar XML tipado com XML não tipado
Criar instâncias de dados XML
Métodos de Tipos de Dados XML