Service Broker — how to extract the rows from the XML message?

后端 未结 2 1653
野的像风
野的像风 2021-01-14 19:45

Say I have the following situation (for demonstration). The simple table content is converted to an XML value and sent via Service Broker to another SQL server where the res

2条回答
  •  陌清茗
    陌清茗 (楼主)
    2021-01-14 20:26

    And other option (i would prefer Remus Rusanu example though.. If a lots of columns and table structures are the same, this helps get lazy):

    declare @x xml = (SELECT * FROM tab FOR XML RAW, root('tab'), TYPE); 
    
    Declare @docHandle int  
    EXEC sp_xml_preparedocument @docHandle OUTPUT, @x
    
    Select *
    FROM OPENXML(@docHandle, 'tab//', 1) 
    With dbo.Tab
    
    EXEC sp_xml_removedocument @docHandle
    

提交回复
热议问题