zoukankan      html  css  js  c++  java
  • XML DML 数据修改语言小节 (一)

    /***************************************************

              作者:herowang(让你望见影子的墙)

             日期:2009.10.18

              注:    转载请保留此信息

    ****************************************************/

     一、XML 数据修改语言

     insert

           Expression1 (

                     {as first | as last} into | after | before

                                        Expression2

                    )

    Expression1 :标识要插入的一个或多个节点。

    Expression2 :目标标识节点。

    into :Expression1 标识的节点作为 Expression2 标识的节点的直接后代(子节点)插入。如果 Expression2 中的节点已有一个或多个子节点,则必须使用 as first 或 as last 来指定所需的新节点添加位置。例如,分别在子列表的开头或末尾。插入属性时忽略 as first 和 as last 关键字。

    after :Expression1 标识的节点作为 Expression2 标识的节点的同级节点直接插入在其后面。after 关键字不能用于插入属性。

    before :Expression1 标识的节点作为 Expression2 标识的节点的同级节点直接插入在其前面。before 关键字不能用于插入属性。

     
    declare @myxml xml    
    set @myxml='<?xml version="1.0" encoding="gb2312"?>     
                <root>     
                   <item id="1">     
                   </item>     
                </root>'    
    select @myxml      
     
    --1、插入item的第一个子元素     
      set @myxml.modify('insert <course1>sql server2005</course1>  into (root/item)[1]') 
    --2、插入item的第一个子元素,插入到同级子元素前面  
      set @myxml.modify('insert <sname> 王一诺</sname> as first into (root/item)[1]')   
    --3、插入item的第一个子元素,插入到同级子元素后面   
      set @myxml.modify('insert <grade>82</grade> as last into (root/item)[1]')   
    --4、插入第二个item节点   
      set @myxml.modify('insert <item id="2" year="2009"></item> into (/root)[1]')  
    --或者    
      set @myxml.modify('insert <item id="2" year="2009"></item> after (/root/item)[1]')   
    --5、向第二个item节点插入多个元素   
       set @myxml.modify('insert (<sname>王海</sname>,<course1>sql server2005</course1>,<grade>75</grade>) into (/root/item)[2]')   
     --6、插入属性   
       set @myxml.modify('insert attribute year{"2009"} into (/root/item)[1]')  
       select @myxml   
    --7、插入多个属性     
      set @myxml.modify('insert (attribute depart{"计算机"},attribute class{"1班"}) into (/root/item)[1]')   
    --8、插入文本节点   
      set @myxml.modify('insert text{"成绩表"} as first into  (/root)[1]')    
    --9、插入整个节点 
      set @myxml.modify('insert <item id="3"  year="2009">    
                               <sname>王若天</sname>    
                               <course1>oracle</course1>    
                               <grade>59</grade></item>     
                         into (/root)[1]')   
    --10、插入处理指令   
      SET @myxml.modify('insert <?Program ="Instructions.exe" ?> before (/root)[1] ')      
      select @myxml 

     

  • 相关阅读:
    X oracle 12c new feature: Automatic Report Capturing Feature
    X 搭建Postgresql configure: error: readline library not found
    X windows上利用vmvare搭建共享存储搭建rac
    洛谷P1397 [NOI2013]矩阵游戏
    BSOJ 6289【NOIP2018模拟赛】黄昏
    BSOJ 4282 秀秀的照片
    BSOJ 5185【11.08题目】暴力破解
    BSOJ 5100 简单的区间
    VUE 项目自适应屏幕和浏览器
    yarn npm区别
  • 原文地址:https://www.cnblogs.com/trieagle/p/1629938.html
Copyright © 2011-2022 走看看