Use of xml.modify to insert parameters into specific element of an xml column

前端 未结 3 1193
长发绾君心
长发绾君心 2020-12-15 09:28

I would like to use a stored procedure to insert some values passed in as parameters into elements in the xml of a column. I have this so far The following parameters:

3条回答
  •  悲哀的现实
    2020-12-15 10:16

    declare @XML xml = '
    
      20
      
        BC4A18CA-AFB5-4268-BDA9-C990DAFE7783
        somename
        
          
             activity1
          
        
      
    '
    
    declare @user_id nvarchar(50) = '20'
    declare @activity_name nvarchar(50) = 'activity1'
    declare @display_name nvarchar(50) = 'displayname1'
    
    set @xml.modify('insert {sql:variable("@display_name")}
                     into (/Profile[ID = sql:variable("@user_id")]
                           /User/Activities/
                           Activity[Name = sql:variable("@activity_name")])[1]')
    

    Result:

    
      20
      
        BC4A18CA-AFB5-4268-BDA9-C990DAFE7783
        somename
        
          
            activity1
            displayname1
          
        
      
    
    

提交回复
热议问题