当前位置:首页 > 系统运维 > 正文内容

SQL Server数据库之一个 SQL 2005 XML 查询的例子

a8116255316年前 (2010-06-28)系统运维12

此文章主要向大家讲述的是SQL Server数据库之一个 SQL 2005 XML 查询的例子,我们大家都知道SQL Server 2005 新增的一个特性主要是对 XML 的支持的增强,现在有很多的文章都在鼓吹 XML 是如何如何的有用,但惭愧的是我学习了好几年的数据库。

很少在实际应用中触碰过 XML,因为用户很少有这方面的需求。最近用户给了一段类似下面结。

SQL Server 2005 新增的一个特性是对 XML 的支持的增强,好多文章都在鼓吹 XML 是如何如何的有用,但惭愧的是我学习了好几年的数据库,很少在实际应用中触碰过 XML,因为用户很少有这方面的需求。最近用户给了一段类似下面结构的 XML。

declare @xdoc xml  set @xdoc = '<conn> <mysql servername="192.168.1.120,3306"> <user name="root" password="" /> <user name="dba" password="" /> <user name="user" password="" /> </mysql> <mssql servername="192.168.1.110,1433"> <user name="sa" password="" /> <user name="dba" password="" /> <user name="user" password="" /> </mssql> <excel id="1" path="c:database" filename="source1.xls" /> <excel id="2" path="d:database" filename="source2.xls" /> <excel id="3" path="e:database" filename="source3.xls" /> </conn> '  

具体的要求就是:在 SQL 2005 中编写一个查询,取出 excel id=1 时的 path & filename。这个需求提醒了我,XML 在数据库中的一个常用需求就是取出 XML 节点中参数的值。

1. SQL 2005 XML 取出节点数据 *** 一。

select excel_path = t.c.value('@path' ,'varchar(255)')  ,excel_name = t.c.value('@filename' ,'varchar(255)')  from @xdoc.nodes('/conn/excel') t (c)  where t.c.value('@id', 'int') = 1  excel_path excel_name  c:database source1.xls  

2. SQL 2005 XML 取出节点数据 *** 二。

select excel_path = @xdoc.value('(/conn/excel[@id="1"]/@path)[1]', 'varchar(255)')  ,excel_name = @xdoc.value('(/conn/excel[@id="1"]/@filename)[1]', 'varchar(255)')  excel_path excel_name  c:database source1.xls 

3. SQL 2005 XML 取出节点数据 *** 三。

该 *** 是 *** 二的改进,我们可以在 xml.value() 函数中使用 sql:variable() 来为 XML 节点中的 id 提供一个动态的参数。

declare @excel_id int  set @excel_id = 1 select excel_path = @xdoc.value('(/conn/excel[@id=sql:variable("@excel_id")]/@path)[1]', 'varchar(255)')  ,excel_name = @xdoc.value('(/conn/excel[@id=sql:variable("@excel_id")]/@filename)[1]', 'varchar(255)')  excel_path excel_name  c:database source1.xls   

以上的相关内容就是对SQL Server数据库之一个SQL 2005 XML查询例子的介绍,望你能有所收获。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://www.2345hao.cn/blog/index.php/post/21277.html

分享给朋友:

“SQL Server数据库之一个 SQL 2005 XML 查询的例子” 的相关文章

windows 7鼠标停顿怎么办?windows 7 usb鼠标停顿的原因以及解决

windows 7鼠标停顿怎么办?windows 7 usb鼠标停顿的原因以及解决

很多使用Windows 7系统的朋友都想小编反应,假如暂停使用电脑,鼠标会出现停顿现象,这是怎么回事呢 该怎么解决呢 下面就和小编一起去看下Windows 7 usb鼠标停顿的解决方法吧。 由于Windows 7系统中有一项USB选择性暂停造成的。这项设置主要为了节电,当他检测到用户没有对系统进行...

如何删除自带的不常用应用为windows 7减负

如何删除自带的不常用应用为windows 7减负

对于Windows 7系统来说,其默认安装的许多工具是我们很少使用或从来不用的,比如系统自带的扫雷、纸牌游戏等。删除此类长期不用的系统组件,不但可以让系统更清爽,更重要的是还可以提高系统的运行速度,特别是对于硬件配置相对较低的上网本来说,尤其如此。接下来,笔者就给大家介绍一下如何删除Windows...

如何设置Win 7通知栏重新显示电源按钮

如何设置Win 7通知栏重新显示电源按钮

有些使用本本的朋友可能会发现,右下角通知栏区域会无法显示电源按钮,导致在插上电源或者是使用电池的时候都无法进行区分。造成这种情况大部分都是因为使用了第三方修改过的系统版本或者对于系统优化过度,所以今天就来解决这个问题。 第一步:在开始菜单的搜索窗口输入“gpedit.msc”,进入组策略编辑器,依...

各个都很实用:windows 7系统电脑日常小技巧

各个都很实用:windows 7系统电脑日常小技巧

在使用Windows 7的时候很多用户对于系统的很多功能并不是很了解,也正是因为这样的不了解导致很多用户在使用Win 之后并不能体验Windows 7的功能便携和强大功能,导致很多用户对于Windows 7的认识还是比较模糊,不过为了让更多的朋友了解Windows 7的特点和便携应用,今天就为大家汇...

Win 7系统中其他声音正常但酷狗音乐没声音怎么回事

Win 7系统中其他声音正常但酷狗音乐没声音怎么回事

故障现象: Windows 7酷狗软件无声音,系统声音正常。 原因分析: 1. 查看酷狗软件设置 2. 查看系统设置 解决方案: 1. Windows 7操作方法 如图:查看是否处于禁音状态   Windows 7系统声音正常酷狗音乐无声音 2. 查看设置音频输出是否...

windows 7系统开机后出现黑屏提示Windows无法启动

windows 7系统开机后出现黑屏提示Windows无法启动

一些用户的Windows 7系统开机后出现黑屏,代码为 Windows无法启动: WindowsSystem32ConfigSystem”。这个问题该如何修复呢?现在小编就给大家分析一下吧。 其实这个代码的意思是引导文件丢失了,引导文件(NTLDR)一般存放于C盘根目录下,是一个具有隐藏和只读属性...