1. 程式人生 > >SQL Server 常用操作XML

SQL Server 常用操作XML

man 刪除節點 操作 ble rep 插入 mman varchar lis

--修改FunctionNo節點值,@OperateFunctionNo為參數
set @DataXml.modify(‘replace value of (/CrudData/FunctionNo/text())[1] with sql:variable("@OperateFunctionNo")‘)

  

--刪除節點
SET @DataXml.modify(‘delete (/CrudData/DataKey)[1]‘)

  

--插入節點
SET @DataXml.modify(‘insert <DataKey></DataKey> as first into (/CrudData)[1]‘)

  

--插入文本
SET @DataXml.modify(‘insert text{sql:variable("@DataKey")} as first into (/CrudData/DataKey)[1]‘)

  

--DataKeyList值獲取
SET @DataKeyList = @DataXml.value(‘(/CrudData/DataKeyList)[1]‘, ‘nvarchar(max)‘)

  XML文本為

<CrudData>
  <ConnKey>SupplierData</ConnKey>
  <AppNo>20</AppNo>
  <FunctionNo>200000</FunctionNo>
  <Command>DoApproveSubjectList</Command>
  <DataKeyList>3210002010402020170508000004,3210002010402020170228000002</DataKeyList>
  <ApprovalResult>2</ApprovalResult>
  <OperateFunctionNo>204020</OperateFunctionNo>
</CrudData>

  

SQL Server 常用操作XML