Linguagem de modificação de dados XML (XML DML)
Aplica-se a: SQL Server
Banco de Dados
SQL do Azure Instâ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:
Use o Método modify() (tipo de dados xml) do tipo de dados xml.
Especifique as instruções XML DML apropriadas dentro do método modify() .
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