• sql 通过游标 拆分xml结构


    -----------------------定义游标变量------------------------------------------
      DECLARE @propertyid INT
      DECLARE @propertyname VARCHAR(50)
      DECLARE @xml NVARCHAR(1000)
      DECLARE top3_Cursor CURSOR SCROLL FOR
       --------------------------定义游标结束-----------------------------
       SELECT s.id, s.name, CAST(PropertyValueSchema AS VARCHAR(1000)) PropertyValueSchema  
     FROM StyleProperty s INNER JOIN (  SELECT MAX(a.id) id  , a.name
      FROM dbo.StyleProperty a INNER JOIN  dbo.StylePartsGroup b ON a.GroupId = b.Id
       WHERE  PropertyValueSchema.exist('//valueSchema//select//@mode')=1 
       GROUP BY a.name) b ON s.id = b.id
      
       OPEN top3_Cursor
       FETCH NEXT FROM top3_Cursor INTO @propertyid,@propertyname,@xml
       WHILE(@@FETCH_STATUS=0)
       BEGIN 
      
       ----------------------------- body-------------------------------------
      
      
        DECLARE @idoc INT

       
       PRINT @xml
       EXEC sp_xml_preparedocument @idoc OUTPUT, @xml
    -- Execute a SELECT statement using OPENXML rowset provider.
    INSERT INTO t1
    SELECT @propertyid propertyid,@propertyname propertyname, *
    FROM OPENXML (@idoc, '/valueSchema/select/items/item' ,1)
          WITH (
          codekey    INT  '@key',
      codename varchar(100)  '@name'
              )
    EXEC sp_xml_removedocument @idoc
       ------------------------------------body end---------------------------
       FETCH NEXT FROM top3_Cursor INTO @propertyid,@propertyname,@xml
       END
      
       -----------------------footer-----------------------
       close top3_Cursor
     DEALLOCATE  top3_Cursor
       ---------------footer end----------------------
     
     --------------------------------------------end  cursor--------------------

  • 相关阅读:
    软件工程——第六章 软件测试【转】
    软件工程——第五章 程序编码【转】
    软件工程——第四章 面向过程的软件设计方法 【转】
    软件工程——第三章 软件需求分析 【转】
    软件工程——第二章 软件计划 【转】
    如何修改远程桌面的端口号
    关于导出Excel
    软件工程——第一章 软件和软件工程的基本概念【转】
    重构代码的7个阶段
    hibernate @JoinColumn
  • 原文地址:https://www.cnblogs.com/Impulse/p/5149754.html
Copyright © 2020-2023  润新知