zoukankan      html  css  js  c++  java
  • SQLServer2005 XML数据类型操作

    在项目中经常用XML文件,看看T-SQL程序设计发现SQLSERVER2005居然可以处理XML类型,而且还可以使用类似于Xpath的查询语法查询。

    示例:

    创建Table

    CREATE TABLE [dbo].[xmlTable](
     [id] [int] IDENTITY(1,1) NOT NULL,
     [doc] [xml] NULL
    )

    一。插入数据

    1.通过XML文件插入

     1.xml

    <?xml version='1.0' encoding='utf-8' ?>
    <dd>
    <a id="2">dafaf2</a>
    <a id="3">dafaf3</a>
    <a id="4">dafaf4</a>
    </dd>

    insert into xmlTable(doc)
    select * from
    openrowset(BULK 'C:\Documents and Settings\Administrator\桌面\1.xml',SINGLE_CLOB) as x

    2.通过字符串插入

    insert into xmlTable(doc) values('<dd><a>123</a></d>')

    二。查询

    select doc.value('(/dd/a[@id>2])[1]','nvarchar(50)') as xm from xmlTable

    select * from xmlTable where doc.value('(/dd/a[@id>2])[1]','nvarchar(50)') ='博客园'

    三。更新

    1.插入节点

    update xmlTable set doc.modify('insert <a>123</a> into (/dd)[1]')

    注:insert <要插入的节点>  插入到  <节点里面>

    into  --插入里面

    after  --插入节点后面

    before  --插入节点前面

    2.删除节点

    update  xmlTable
    set doc.modify('delete (/dd/a)[1]')   --删除 /dd/a 的第一个节点

    3.修改节点

    update xmlTable
    set doc.modify('replace value of (/dd/a/text())[1] with "博客园"')

    暂时只学到这么多,以后再写。。。

  • 相关阅读:
    [BJOI2006]狼抓兔子
    [HNOI2016]最小公倍数
    hihocoder 1419 重复旋律4
    [NOI2015]品酒大会
    [SDOI2016]生成魔咒
    [ZJOI2009]狼和羊的故事
    BZOJ4361 isn
    [SDOI2009]虔诚的墓主人
    BZOJ 3329 Xorequ
    [ZJOI2013]丽洁体
  • 原文地址:https://www.cnblogs.com/qingyi/p/1766232.html
Copyright © 2011-2022 走看看