深入探讨SQL Server 2000对XML的支持(四)

7、XML与数据库的深度整合:SQL Server 2000及其扩展 本文深入探讨SQL Server 2000中的XML功能及其与ADO.NET的集成,包括通过URL访问数据库资源、创建XML视图、返回查询结果为XML等特性。同时,介绍了如何使用FOR XML子句、SqlXmlAdapter以及SQLXML 3.0扩展来优化XML数据处理,并通过实际应用案例展示了XML在数据交换、备份恢复和系统集成中的重要作用。 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> XPath查询 架构和模板   XPath查询也可以被内嵌进一个XML模板文件中,下面的代码是一个包含XPath查询的简单的XML模板文件。 <Northwind xmlns:sql= "urn:schemas-microsoft-com: xml-sql"> <sql:xpath-query mapping-schema= "file4.xdr"> /Customer[@CustomerID= 'ALFKI']/Order </sql:xpath-query> </Northwind>   这个查询使用了一个架构(schema)返回CustomerID号为ALFKI的用户的所有的订单,如果想要使XPath语句运行,必须使用一个XDR架构文件映射不同的XML元素和属性到相应的数据库表和字段名。下面给出了这个架构文件。 <?xml version="1.0" ?> <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes" xmlns:sql="urn:schemas-microsoft-com:xml-sql"> <ElementType name="Customer" sql:relation="Customers"> <AttributeType name="CustomerID" dt:type="id" /> <AttributeType name="CompanyName" /> <AttributeType name="ContactName" /> <AttributeType name="City" /> <AttributeType name="Fax" /> <AttributeType name="Orders" dt:type= "idrefs" sql:id-prefix="Ord-" /> <attribute type="CustomerID" /> <attribute type="CompanyName" /> <attribute type="ContactName" /> <attribute type="City" /> <attribute type="Fax" /> <attribute type="Orders" sql:relation= "Orders" sql:field="OrderID"> <sql:relationship key-relation="Customers" key="CustomerID" foreign-relation="Orders" foreign-key="CustomerID" /> </attribute> <element type="Order"> <sql:relationship key-relation="Customers" key="CustomerID" foreign-relation="Orders" foreign-key="CustomerID" /> </element> </ElementType> <ElementType name="Order" sql:relation="Orders"> <AttributeType name="OrderID" dt:type= "id" sql:id-prefix="Ord-" /> <AttributeType name="EmployeeID" /> <AttributeType name="OrderDate" /> <AttributeType name="RequiredDate" /> <AttributeType name="ShippedDate" /> <attribute type="OrderID" /> <attribute type="EmployeeID" /> <attribute type="OrderDate" /> <attribute type="RequiredDate" /> <attribute type="ShippedDate" /> <element type="OrderDetail"> <sql:relationship key-relation="Orders" key="OrderID" foreign-relation="[Order Details]" foreign-key="OrderID" /> </element> <element type="Employee"> <sql:relationship key-relation="Orders" key="EmployeeID" foreign-relation="Employees" foreign-key="EmployeeID" /> </element> </ElementType> <ElementType name="OrderDetail" sql:relation= "[Order Details]" sql:key-fields="OrderID ProductID"> <AttributeType name="ProductID" dt:type="idref" sql:id-prefix="Prod-" /> <AttributeType name="UnitPrice"/> <AttributeType name="Quantity" /> <attribute type="ProductID" /> <attribute type="UnitPrice"/> <attribute type="Quantity" /> <element type="Discount" sql:field="Discount"/> </ElementType> <ElementType name="Discount" dt:type="string" sql:relation="[Order Details]"/> <ElementType name="Employee" sql:relation="Employees"> <AttributeType name="EmployeeID" dt:type="idref" sql:id-prefix="Emp-" /> <AttributeType name="LastName" /> <AttributeType name="FirstName" /> <AttributeType name="Title" /> <attribute type="EmployeeID"/> <attribute type="LastName" /> <attribute type="FirstName" /> <attribute type="Title" /> </ElementType> </Schema>   如果您想深入了解架构文件的话,请参看SQL Server 2000的用户文档或等待我的以后的文章。   和内嵌在XML模板文件中的SQL查询语句一样,XPath查询语句使用urn:schemas-microsoft-com:xml-sql和sql作为前缀,共同标示用在模板中的自定义元素和属性,对于XPath查询而言,我们使用一个名为xpath-query的元素来标识查询语法,这个元素也有一个名为mapping-schema的属性,用来标示相应用以映射表和字段到特定的XML项目的架构文件所在的路径。   下面的代码给出了另一个使用更复杂XPath查询的模板文件。 <Northwind xmlns:sql= "urn:schemas-microsoft-com:xml-sql"> <sql:xpath-query mapping-schema= "listing4.xdr"> /Customer[@CustomerID= 'ALFKI']/Order/ Employee[@LastName='Suyama'] </sql:xpath-query> </Northwind>   当执行这个模板文件时,XPath查询返回与某个客户签下订单的雇员(employee)的姓名,结果如下: <Northwind xmlns:sql= "urn:schemas-microsoft-com:xml-sql"> <Employee EmployeeID="Emp-6" LastName="Suyama" FirstName="Michael" Title="Sales Representative"/> </Northwind>   模板文件中使用的XPath查询也可以使用参数,处理过程很象在XSL样式表中使用参数一样。象XSL一样,使用$指定一个变量。下面的代码说明了如何在一个包含XPath查询的模板文件中整合变量。 <Northwind xmlns:sql="urn:schemas-microsoft-com:xml-sql"> <sql:header> <sql:param name="ID"/> </sql:header> <sql:xpath-query mapping-schema="listing4.xdr"> {{should this be "listing6.xdr"?}} /Customer/Order[@OrderID=$ID] </sql:xpath-query> </Northwind>   通过在URL中传递参数名和相应的参数值,我们就可以完成把参数传递到模板中的操作。结果如下: <Northwind xmlns:sql="urn:schemas-microsoft-com:xml-sql"> <Order OrderID="Ord-10643" EmployeeID= "6" OrderDate="1997-08-25T00:00:00" RequiredDate= "1997-09-22T00:00:00" ShippedDate= "1997-09-02T00:00:00"> <Employee EmployeeID="Emp-6" LastName= "Suyama" FirstName="Michael" Title= "Sales Representative" /> <OrderDetail ProductID="Prod-28" UnitPrice= "45.6" Quantity="15"> <Discount>0.25</Discount> </OrderDetail> <OrderDetail ProductID="Prod-39" UnitPrice= "18" Quantity="21"> <Discount>0.25</Discount> </OrderDetail> <OrderDetail ProductID="Prod-46" UnitPrice= "12" Quantity="2"> <Discount>0.25</Discount> </OrderDetail> </Order> </Northwind>   小结   通过使用上面我介绍的几种技术,我们可以直接从SQL Server 2000数据库中直接取得XML数据。如我所介绍,URL查询、XML模板文件、XDR架构和XPath查询提供了强大的功能,从SQL Server 2000中直接获得XML数据。除此之外,还有很多重要的概念,由于篇幅有限在本文中不可能详述,如FOR XML EXPLICIT查询和OPENXML这些技术,我会在以后的文章中进一步进行讨论,请大家等待。
SQL Server 2000一键安装实战指南 SQL Server 2000 是微软于2000年推出的重要数据库版本,标志着其在企业级数据库领域的成熟与广泛应用。作为 SQL Server 7.0 的继任者,该版本在稳定性、性能和可管理性方面进行了大幅提升,成为当时众多企业和机构构建核心业务系统的基础平台。SQL Server 2000 提供了完整的事务处理能力、支持多用户并发访问、具备数据复制与分布式查询功能,并首次集成了对XML支持 阅读详情

相关推荐

深入掌握SQL Server 2000:高级教程实战指南

本文还有配套的精品资源,点击获取 简介:本书深入探讨SQL Server 2000数据库系统的高级特性和应用,包括T-SQL语言、索引优化、视图、存储过程、触发器、安全性、备份恢复、数据库复制、性能监控、数据库设计、XML支持和分析服务等关键概念。通过系统的指导和实例,帮助读者全面提升SQL Server 2000数据库的管理和维护技能,确保数据库系统的稳定性和性能。 ...

weixin_35509395的博客 973

深入探讨SQL Server 2000XML支持

                         深入探讨SQL Server 2000XML支持                     Wayne   [作者简介:]Wayne,新一代程序员,十二岁时开始学习编程,十三岁时拥有自己的电脑,先后学过Basic、Pascal、C、FOXPRO、VB、DELPHI、C++、SQL,学习J

3504

Microsoft SQL Server 2000 SP4关键补丁详解

在数据库管理系统的世界里,补丁是确保数据库安全性和性能持续优化的关键组件。SQL Server 2000 SP4补丁,作为这个领域的老牌数据库系统——SQL Server 2000的最新服务包,承载着至关重要的更新使命。服务包(Service Pack)是软件供应商为了集中修复软件中存在的错误、漏洞和性能问题而发布的集成更新集合。对于SQL Server 2000来说,服务包是一个重要的组成部分,它能够为数据库管理员提供一套集成了多种改进措施的打包解决方案。

weixin_30336531的博客 1108

深入探讨SQL Server 2000XML支持 选择自 softj 的 Blog

深入探讨SQL Server 2000XML支持                     Wayne   [作者简介:]Wayne,新一代程序员,十二岁时开始学习编程,十三岁时拥有自己的电脑,先后学过Basic、Pascal、C、FOXPRO、VB、DELPHI、C++、SQL,学习Java语言后,遂成为Java的疯狂崇拜者,现就读于中国科技大学。  引言

泰山之峰的专栏 1005

[sql server] SQL Server 2000 XML之七种兵器

<br />XML,已成为近来最热门的Web技术,它是SQL Server 2000中的重要部分。本文将综合七条SQL Server 2000中最重要的XML综合特性组成XML之七种兵器。 <br />兵器之一:FOR XML<br />  在SQL Server 2000中,标准的T-SQL SELECT语句包括FOR XML子句,它以XML文档形式返回一个查询结果。新的FOR XML子句有三种模式——RAW,AUTO,和EXPLICIT,每个都能对XML文档格式提供附加标准的控制。<br />  下面首

永生天地 1788

深入探讨SQL Server 2000XML支持()

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/java

java专栏 257

深入探讨SQL Server 2000XML支持()

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/java

java专栏 369

深入探讨SQLServer2000XML支持

来自:linux宝库 (http://www.linuxmine.com) 联系:linuxmine#gmail.com 分类:[SQL Server]   我们可以很简

№悟◇ 923

深入探讨sql server 2000xml支持(转)

我们可以很简单的使用ado访问数据库中的数据,但是,如果我们想把从数据库中检索得 到的数据以xml的格式显示出来的话,就要费点神了,当然,我们可以去找一些现成的应用程   虽说ado2.5宣称支持xml,但是它仍需要一个额外的层...

cuankuangzhong6373的博客 259

深入探讨SQL Server 2000XML支持()

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/java

java专栏 328

SQL Server 2000实战试题精编与解析

本文还有配套的精品资源,点击获取 简介:SQL Server 2000是微软推出的数据库管理系统,涵盖了数据存储、管理和分析的关键功能。该汇编文件包含一系列精心设计的练习题和测试,旨在帮助学习者全面掌握SQL Server 2000的核心功能,包括数据库管理、安全性、T-SQL编程、索引优化、备份恢复、事务处理、报表服务、集成服务、分析服务和复制技术。学习者通过这些实战题目...

weixin_35677363的博客 744

SQL Server 2000函数详解与应用大全

本文还有配套的精品资源,点击获取 简介:SQL Server 2000作为微软的关系型数据库管理系统,提供了丰富的函数集合用于数据处理和分析。本文详细介绍了聚合函数、字符串函数、日期与时间函数、数学函数、转换函数、系统信息函数以及游标和其他特殊函数。熟练掌握这些函数,对于数据库管理和开发人员来说是必要的,有助于提升工作效率和数据操作质量。 1. SQL Serve...

weixin_33240461的博客 1125

SQL Server 2000开发者实战指南

本文还有配套的精品资源,点击获取 简介:《SQL Server 2000开发者指南》详细介绍了如何利用SQL Server 2000的企业级功能进行数据库管理和应用开发。本书全面讲解了SQL Server 2000的核心特性,包括Transact-SQL编程、数据库架构、安全性管理、备份与恢复策略、性能调优、数据导入导出、存储过程与触发器、报表服务、OLAP分析服务以及ET...

weixin_42509507的博客 997
上一篇: 4月6日上午“java技术讲座”不要错过
下一篇: 如何组织软件开发团队
java169
博客等级 码龄18年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值