SQL Server 2005 新增一特性的描述

数据库 SQL Server
我们今天主要向大家描述的是SQL Server 2005 新增的一个特性及,对 XML 的支持的增强的正确描述,以下就是文章的主要内容描述。

以下的文章主要向大家讲述的是SQL Server 2005 新增的一个特性及,对 XML 的支持的增强,我看到过很多的文章都在鼓吹 XML 的功能是如何的神奇,但是惭愧的是我学习了好几年的数据库,很少在实际应用中触碰过 XML。

因为用户很少有这方面的需求。最近用户给了一段类似下面结构的 XML。

 

  1. declare @xdoc xml  
  2. set @xdoc = '<conn> 
  3. <mysql servername="192.168.1.120,3306"> 
  4. <user name="root" password="" /> 
  5. <user name="dba" password="" /> 
  6. <user name="user" password="" /> 
  7. </mysql> 
  8. <mssql servername="192.168.1.110,1433"> 
  9. <user name="sa" password="" /> 
  10. <user name="dba" password="" /> 
  11. <user name="user" password="" /> 
  12. </mssql> 
  13. <excel id="1" path="c:\database\" filename="source1.xls" /> 
  14. <excel id="2" path="d:\database\" filename="source2.xls" /> 
  15. <excel id="3" path="e:\database\" filename="source3.xls" /> 
  16. </conn> 
  17. '  

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

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

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

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

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

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

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

 

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

上述的相关内容就是对SQL Server 2005 新增的一个特性是对 XML 的支持的增强的描述,希望会给你带来一些帮助在此方面。

【编辑推荐】

  1. SQL Server 2000 JDBC驱动的正确安装步骤
  2. SQL Server 连接字符串的实现步骤
  3. SQL Server 连接字符串的一些声明
  4. SQL Server 字符串在实际操作中的注意事项
  5. SQL Server 字符串在实际操作中的注意事项
责任编辑:佚名 来源: IT168
相关推荐

2010-06-17 15:09:49

SQL Server

2010-06-17 15:24:51

SQL SERVER

2010-07-14 13:21:19

SQL Server

2010-07-05 13:19:36

2010-07-05 12:33:13

SQL Server

2010-07-19 11:01:55

SQL Server

2009-07-07 13:42:00

SQL Server

2010-06-30 09:36:25

SQL Server

2011-02-28 17:41:20

SQL Server

2010-07-23 12:55:29

SQL Server

2010-07-20 11:01:51

SQL Server

2010-07-07 10:54:22

SQL Server索

2010-10-21 15:13:20

SQL Server系

2010-07-09 11:06:13

SQL Server

2010-07-07 09:27:15

SQL Server索

2010-06-28 13:56:16

SQL Server代

2010-07-19 18:04:23

SQL Server锁

2010-07-09 10:08:53

SQL Server函

2010-07-20 08:35:54

SQL Server锁

2011-03-29 15:27:26

SQL Server 动态管理
点赞
收藏

51CTO技术栈公众号