此文章主要向大家讲述的是SQL Server数据库之一个 SQL 2005 XML 查询的例子,我们大家都知道SQL Server 2005 新增的一个特性主要是对 XML 的支持的增强,现在有很多的文章都在鼓吹 XML 是如何如何的有用,但惭愧的是我学习了好几年的数据库。
青原网站建设公司创新互联,青原网站设计制作,有大型网站制作公司丰富经验。已为青原成百上千提供企业网站建设服务。企业网站搭建\成都外贸网站建设要多少钱,请找那个售后服务好的青原做网站的公司定做!
很少在实际应用中触碰过 XML,因为用户很少有这方面的需求。最近用户给了一段类似下面结。
SQL Server 2005 新增的一个特性是对 XML 的支持的增强,好多文章都在鼓吹 XML 是如何如何的有用,但惭愧的是我学习了好几年的数据库,很少在实际应用中触碰过 XML,因为用户很少有这方面的需求。最近用户给了一段类似下面结构的 XML。
- declare @xdoc xml
- set @xdoc = '
- '
具体的要求就是:在 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查询例子的介绍,望你能有所收获。
分享文章:SQLServer数据库之一个SQL2005XML查询的例子
文章转载:http://www.shufengxianlan.com/qtweb/news38/248888.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联