sqlxml

--DECLARE @xml varchar(1024) --SET @xml=' --<root> -- <code id="030001"> --  <point id="01" /> --  <point id="02" /> -- </code> --</root>' --DECLARE @hdoc int --EXEC sp_xml_preparedocument @hdoc out,@xml --SELECT * FROM --OPENXML(@hdoc, '/root/code/point', 2)  --WITH  --(  --  itemCode varchar(36) '../@id', --  point varchar(36) '@id' --) AS a ----在这里的 结果集 a 就包含了主从表的信息 ----INSERT INTO TABLEa SELECT * FROM a --EXEC sp_xml_removedocument @hdoc

DECLARE @xml varchar(1024) SET @xml=' <root>  <code id="030001">   <point id="01" />   <point id="02" />  </code> </root>' DECLARE @hdoc int EXEC sp_xml_preparedocument @hdoc out,@xml SELECT * FROM OPENXML(@hdoc, '/root/code/point', 2)  WITH  (    itemCode varchar(36) '../@id',   point varchar(36) '@id' ) AS a --在这里的 结果集 a 就包含了主从表的信息 --INSERT INTO TABLEa SELECT * FROM a EXEC sp_xml_removedocument @hdoc

exec [dbo].SkyProcessXMLData   ' <DataSet>   <tblEmp>     <name>Vishal</name>     <designation>Developer</designation>l   </tblEmp>   <tblEmp>     <name>Jibin</name>     <designation>System Analyst</designation>l   </tblEmp> </DataSet>'

 

 

CREATE PROCEDURE dbo.SkyProcessXMLData (  @xml XML ) AS BEGIN  DECLARE @docHandle INT  EXECUTE sp_xml_preparedocument @docHandle OUTPUT, @xml  SELECT    *D  FROM   OPENXML(@docHandle, '/DataSet/tblEmp', 2)  WITH (     name VARCHAR(50),designation VARCHAR(50)   )  EXECUTE sp_xml_removedocument @docHandle END

posted @ 2016-06-23 17:58  光阴的故事-SKY  阅读(99)  评论(0)    收藏  举报