【问题标题】:How to insert dynamic node in xml? sql server如何在xml中插入动态节点? sql服务器
【发布时间】:2018-02-05 08:43:34
【问题描述】:

我有一个表 A。我想在 xml 中插入列。

我知道“@x.modify('insert <a>{sql:column("XColumn")}</a>' into /') from A”没问题。

但是如何在xml 中插入动态节点呢?

'@x.modify('insert <{sql:column("XColumn")}>1</{sql:column("XColumn")}>' into /') from A'是错误的。

我在文档中找不到任何解决方法。

【问题讨论】:

    标签: sql-server xquery xml-dml


    【解决方案1】:

    因此,您必须构造要在 SQL 中插入的 XML。例如:

    DECLARE @NewXML XML
    
    -- I am sure there is a cleaner way to do this... / Using a template
    SET @NewXML = CONVERT(XML, '<' + @ElementName + '>' + @Value + '</' + @ElementName + '>')
    
    @XML.modify('insert sql:variable("@NewXML") into (/root)[1]')
    

    希望它是您正在寻找的东西!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-28
      • 2013-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-27
      • 1970-01-01
      相关资源
      最近更新 更多