Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Insira vários nós no campo xml em uma única consulta


A documentação do SQL Server diz muito claramente que o insert instrução pode lidar com vários nós. Então, meu palpite é que seu problema é apenas um erro de sintaxe. (A sintaxe da Microsoft varia um pouco daquela definida no Especificação do XQuery Update Facility , mas é reconhecidamente semelhante.)

Eu tentaria fazer os elementos f1 e f2 em uma sequência e envolvê-los entre parênteses (a especificação requer um ExprSingle aqui, o que significa que nenhuma vírgula de nível superior é permitida):
update t 
set XmlField.modify(
  'insert (<f1>value here</f1>, <f2>value there</f2>) into (/xmldoc)') 

(Não testado em relação ao SQL Server.)