扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:microsoft.com 来源:天新网 2008年4月28日
关键字: 数据库 Mssql SQL SQL Server
本文讨论SQL Server 2005的新功能,它允许你将XML数据分解到关系格式中,而不必耗用太多内存。我们首先了解一下XQuery和它在SQL Server 2005中为开发者提供的功能。
XQuery介绍
SQL Server 2005 XQuery函数
这个方法根据一个XML节点上的搜索表达式返回一个布尔值。例如,XML代码片段中的语句将返回1(真):
|
这个语句返回0(假):
|
由于“Socks”一词被封套,这个语句将返回0(假)。
|
这个方法接受一个XQuery语句并返回一个单独值。使用同样的XML代码片段,不可以使用VALUE函数生成“betty”值,如下所示:
|
而XQuery生成“zach”值。
|
xml.query
|
它返回XML文件:
|
xml.nodes
在你需要将一个XML数据类型变量中的数据分解到关系数据中时,这个方法十分有用。这个方法接受一个XQuery语句作为参数,并返回一个包含XML变量逻辑标量数据的行集。以上查询利用上面定义的XML变量,并将数据分解到一个结果集中,它显示在XML变量中定义的人物姓名。
现在我来说明如何修改上周的OPENXML存储过程,使其可以应用XQuery功能。首先,我往XML变量中加载一些数据。如上所示。我们可以建立一个接受XML参数的过程,再应用XQuery函数把XML文件中的数据插入一个表中,而不必应用OPENXML。
例如,在上述存储过程中应用XML数据,你只需调用一次数据库,而不必像典型存储过程编程那样调用N次数据库。这二者似乎区别不大,但对一个繁忙的系统而言,应用XML数据会有很大益处。而且,应用XQuery而非OPENXML还会显著提高性能,对小型XML文件更是如此。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者