首页>参考读物>计算机科学与技术>数据库

SQL Server 2000 XML应用程序开发指南
作者 : (美)John Griffin
译者 : 辰卓工作室
出版日期 : 2002-01-01
ISBN : 7-111-09634-7
定价 : 29.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 276
开本 : 16开
原书名 : XML and SQL Server 2000
原出版社:
属性分类: 店面
包含CD :
绝版 : 已绝版
图书简介

本书从介绍XML及其相关概念入手,进而详细讨论了SQL Server 2000的新增XML性能,并给出了SQL Server 2000生成和操作XML文档的多种方法,其间结合了XSLT、XPath规范以及XDR规范。关于XML文档的生成和从XML文档插入数据库数据,本书给出了大量的实例和有条不紊的处理办法。
本书提供了示例代码、指导性原则以及实例模板,是XML开发者的必备参考书。

图书前言

本书适用于那些需要在Microsoft数据库平台上开发可靠的XML应用程序的SQL Server 2000开发者和项目经理。
通过阅读本书,那些熟练的开发成员以及有单机和客户/服务器分布式环境下开发应用程序经验的SQL Server开发人员可以了解SQL Server 2000的XML新特性,并在很短的时间内掌握它。本书提供了示例代码、指导性原则以及实例模板,以帮助开发者使用XML这项新技术。
本书适合的读者
对XML不熟悉的开发者可以阅读第1章及附带的准则和示例代码,以便熟悉这项技术。本书试图通过对新的开发人员和开发团体提供准则和解释,使得学习一种新的技术所需的代价最小。尽管本书部分章节的内容十分复杂,但我们尽量将各部分的复杂程度都降低到了最小。复杂的内容被分割为小的部分以便更多的用户可以看懂,同时包含了大量的代码。
对于那些管理一组开发人员并且开发可靠的应用程序的项目经理而言,本书提供了在SQL Server 2000环境下编写XML代码及其限制和能力的一个总体上的介绍。开发人员个人或项目团体可以将本书作为培训文档使用。
每一章都提供了许多示例,首先以较为容易的示例来介绍基础知识,然后逐渐加大难度。
本书不包括的内容
本书并不是结构化查询语言(structured query language,SQL)的教程或参考手册。本书只涉及了Microsoft SQL Server 2000的XML特性。关于SQL和SQL Server 2000,已经有很多技术书籍和在线参考手册。而本书则致力于在其他信息中没有涉及到的一个方面—用多种不同的方法建立高效而且格式良好的XML文档。
如果你需要了解在Microsoft的SQL Server 2000之外的平台上生成XML文档的相关知识,那么本书并不适用。尽管本书的前两章概述了XML、XML样式表转换、XML模式和文档类型定义(Document Type Definition,DTD)等适用于任何开发平台的知识,但主要论述的是Microsoft的SQL Server 2000 Enterprise的数据库平台。本书将Microsoft的Internet Explorer作为默认浏览器。
本书的组织结构
全书共分为以下8章:
第1章讨论了可扩展标记语言(Extensible Markup Language,XML)。该章包含了DTD和新的XML规范的讨论。对于Microsoft的扩展数据精简(Extended Data Reduced,XDR)模式规范的讨论则留在了第5章。
第2章讨论了可扩展样式表语言转换(Extensible Stylesheet Language Transfomation,XSLT)。这种语言规定了XML文档如何通过样式表的应用来变成HTML文档或者其他类型的XML文档。
第3章是需要你来亲自操作的一章。在这一章中,读者将执行安装过程,安装过程能够使SQL Server 2000处理XML URL请求和模板文件。该章是后续章节的预备知识。
第4章从总体上讨论了几种客户/服务器体系结构。该章讨论了SQL Server的以下功能:
经由URL来接收SQL查询,然后生成XML文档作为查询结果。
处理SQL模板文件来产生文档。
使用存储过程来获得与处理模板文件一样的结果。
第5章详细讨论了Micorosft的XDR模式,然后介绍了Microsoft的Biztalk Framework(Biztalk框架),并提供了示例。最后讨论了XDR模式注解(Schema Annotation)和模式数据类型,以包括关于Microsoft的标准与W3C标准之间差异的内容。
第6章详细讨论了XPath导航语言及其与提供XML格式的结果之间的关系。该章用较多的篇幅讨论了隐式和显式的数据类型转换。在讨论XPath语言和Microsoft的XDR模式之间的转换过程的同时,该章讨论了这二者之间数据类型的差异。
第7章讨论了对SQL的SELECT语句的新扩展。FOR XML可以完全控制生成的XML文档中元素的所有层次结构。该章将详细讨论它的三种模式—RAW、AUTO和EXPLICIT。在这三种模式中,开发者可以不同程度地控制XML文档的生成。
第8章讨论了最后一种SQL扩展—OPENXML。关键字OPENXML可以使一个XML文档表示为类似于一个视图或者表的数据源。这使得数据可以进入SQL Server表中。
附录为正文中的许多章节提供了参考:
附录A给出了Northwind数据库中所有表的一个完整的明细目录。Northwind数据库是贯穿本书的示例数据库。
附录B是本书中使用的所有XSLT元素的一个索引。
附录C列出了主要的XPath函数的描述及其用法举例。
附录D给出了所有XML数据类型的一个清单及扩展。
附录E给出了参考Web站点的详细资源清单,这些Web站点可供进一步研究之用。
附录F介绍了IBM的XSL Editor,它是书中用到的XSL学习工具。
ナ附录G介绍了一种用于创建映射模式的可视化工具—Microsoft的SQL Server XML View Mapper。

作者简介

(美)John Griffin:暂无简介

译者简介

辰卓工作室:暂无简介

译者序

XML是可扩展标记语言(Extensible Markup Language)的简称。和HTML相同,XML是从标准通用标记语言(Standard Generalized Markup Language,SGML)派生而来的。和SGML一样,XML也是一种元语言,一个定义Web应用的SGML的子集。可以用XML来定义种种不同的标记语言,以满足不同的需要。
HTML和XML是万维网联盟(World Wide Web Consortium,W3C)制定的标准。W3C的成员意识到,随着因特网的飞速发展,必须找到一种办法将数据和Web的表现方式分离开来。因此,XML诞生了。尽管严格地讲XML只是一种数据标记规范语言,但它已经开始渐渐地包含了一系列相关的技术,比如XSL、名字空间、XDR、XPath、XLink等。
XML目前正在成为各种数据特别是文档的首选格式,由于它具有标记不同字段的能力,因此使得搜索变得更简单和动态化。现在的问题是:怎样管理XML标记的数据。一种新的技术是用数据库对XML进行存储、检索和操作,即把XML标记的数据收入一个框架中,在一种更容易管理、更系统化、更为人们所熟悉的环境中完成搜索、分析、更新和成果输出工作。
本书主要涉及Microsoft SQL Server 2000的XML特性。关于SQL和SQL Server 2000,已经有很多技术书籍和在线参考手册。而本书则致力于在其他信息中没有涉及到的一个方面—用多种不同的方法建立高效而且格式良好的XML文档。
本书的前两章概述了XML、XML样式表转换、XML模式和文档类型定义(Document Type Definition,DTD)等适用于任何开发平台的知识,但本书主要论述的是Microsoft的SQL Server 2000 Enterprise的数据库平台。
在翻译本书的过程中,我们发现本书结构清晰,读者可以由浅入深地学习SQL Server 2000的XML性能。书中对当前流行的很多与XML相关的技术都有详细的讲解,比如文档类型定义、可扩展样式表语言转换(Extensible Stylesheet Language Transfomation,XSLT)、XPath规范、Microsoft的扩展数据精简(Extended Data Reduced,XDR)模式等。
本书最大的特色是深入浅出、代码详尽、例图丰富,适合于不同层次、不同需求的SQL、XML开发人员和初学者,作者给出的贯穿全书的大量图示和代码实例将帮助大家更好地理解书中所讨论的概念和方法。相信通过对本书的学习,读者能很快掌握SQL Server 2000的XML新特性,并了解到大量的XML相关技术。
在术语的使用方面,我们参考了国内现有的XML及SQL Server方面的书籍,力求避免混淆。
本书由蒋亚群、郑笛、王俊组织翻译,刘明、唐遇星、张江涛、刘志华和姜玉琴参加了本书的翻译、校对、录入和排版工作。全书由陈曙晖统稿。由于本书发行的时间较短,而且限于经验和水平,书中难免会存在一些不足和错误之处,敬请广大读者批评指正。

2001年11月

图书目录

第1章  XML 1
1.1  XML的由来 1
1.2  XML文档 3
1.2.1  XML处理过程 4
1.2.2  XML文档的组成 5
1.2.3  格式良好的XML文档 10
1.3  文档类型定义 10
1.3.1  DOCTYPE声明 11
1.3.2  Public与Private 12
1.3.3  注释 12
1.3.4  声明元素 12
1.3.5  声明属性 16
1.3.6  有效的XML文档与格式良好的
XML文档 18
1.3.7  为给定的XML文档编写DTD的
例子 18
1.3.8  无效XML文档的例子 21
1.4  XML模式 23
1.4.1  模式规范 23
1.4.2  模式基础 24
1.5  高级主题 36
1.5.1  名字空间和限定 36
1.5.2  限定的局部声明 37
1.5.3  非限定的局部声明 38
1.5.4  模式文件的位置 40
1.6  练习答案 41
1.6.1  属性列表 41
1.6.2  无效的XML文档 41
1.7  小结 43
第2章  XSLT样式表 44
2.1  可扩展样式表语言转换 44
2.1.1  整体大于部分之和 44
2.1.2  XSL编辑器 45
2.2  什么是样式表 45
2.2.1  HTML样式表 47
2.2.2  简单的XSLT样式表 48
2.3  节点和树的思维方式 49
2.3.1  节点 51
2.3.2  位置路径 51
2.4  样式表结构 52
2.4.1  把样式表和XML文档相关联 53
2.4.2  <xsl:stylesheet> 54
2.4.3  元素的层次和顺序 54
2.4.4  样式表结构的例子 55
2.5  模板 55
2.5.1  模式(简化语法) 56
2.5.2  模式示例 56
2.5.3  模板规则 58
2.5.4  创建树 63
2.6  数字的格式化输出 68
2.6.1  <xsl:decimal-format> 68
2.6.2  Format-number()函数 69
2.7  条件处理 70
2.7.1  <xsl:if>元素 70
2.7.2  <xsl:choose>元素 71
2.7.3  循环 71
2.7.4  控制输出 72
2.8  模式 74
2.9  例子—一个企业的财政季度报告 76
2.10  小结 84
第3章  IIS和虚目录 85
3.1  虚目录 85
3.2  虚目录管理工具 85
3.2.1  系统要求 86
3.2.2  虚名字 86
3.3  用虚目录管理工具创建虚目录 87
3.3.1  启动虚目录管理工具 87
3.3.2  命名虚目录 88
3.3.3  指明注册信息 89
3.3.4  映射到数据源 90
3.3.5  指定查询设置 90
3.3.6  指定虚名字 91
3.3.7  Advanced选项卡 93
3.3.8  URL、虚目录和物理目录 94
3.4  虚目录管理对象模型 95
3.4.1  SQLVDirControl对象 96
3.4.2  SQLVDirs集合对象 97
3.4.3  SQLVDir对象 98
3.4.4  VirtualNames集合对象 99
3.4.5  VirtualName 对象 100
3.5  使用对象模型创建一个虚目录 102
3.6  小结 102
第4章  经由HTTP访问SQL 2000 103
4.1  二层、三层和n层体系结构 104
4.1.1  二层客户/服务器体系结构 104
4.1.2  三层客户/服务器体系结构 105
4.1.3  n层客户/服务器体系结构 105
4.1.4  用于IIS和SQL 2000的典型Microsoft
三层体系结构 106
4.2  能用HTTP做什么 106
4.2.1  将SQL查询直接放在URL中 107
4.2.2  直接在URL中指定模板 107
4.2.3  在URL中声明一个模板文件 107
4.2.4  指定针对URL中的模式文件的XPath
查询 108
4.2.5  直接在URL中指定数据库对象 108
4.3  实体 108
4.3.1  XML中的实体 108
4.3.2  URL中的实体 109
4.4  通过HTTP执行SQL 110
4.4.1  格式良好的文档、片段以及&root 111
4.4.2  在多表上的查询 112
4.4.3  传递参数 114
4.4.4  XSL关键字 114
4.5  通过HTTP协议来执行模板文件 116
4.5.1  使用XML模板 116
4.5.2  传递模板参数 119
4.5.3  指定XSL样式表 121
4.6  执行存储过程 121
4.7  通过HTTP来访问数据库对象 123
4.8  通过HTML表单传递模板 123
4.9  小结 125
第5章  使用XDR模式创建XML视图 126
5.1  概述 126
5.2  XDR模式 126
5.2.1  元素和属性 127
5.2.2  内容模型 128
5.2.3  数据类型 134
5.2.4  映射模式 135
5.2.5  名字空间 136
5.2.6  带注解的模式例子 137
5.2.7  缺省的XDR元素和属性的映射 138
5.3  BizTalk 139
5.4  XDR模式的注解 141
5.4.1  XDR元素和属性到表和列的显式
映射 141
5.4.2  使用sql:relationship的关系表 144
5.4.3  使用sql:is-constant在XML文档中
包含模式元素 148
5.4.4  使用sql:map-field从XML文档中
除去模式元素 149
5.4.5  用sql:key-fields标识关键字列 151
5.4.6  使用sql:target-namespace指定目标
名字空间 152
5.4.7  sql:id-prefix和有效ID、IDREF和
IDREFS类型属性 153
5.4.8  使用sql:use-cdata创建CDATA节 155
5.4.9  使用sql:url-encode请求对BLOB
数据的URL引用 156
5.4.10  使用sql:overflow-field检索未使用
的(unconsumed)数据 157
5.4.11  使用sql:limit-field和sql:limit-value
过滤记录 157
5.4.12  数据类型强制 157
5.5  模式属性的缺省值 160
5.6  在查询中使用被注解的XDR模式 162
5.6.1  使用XPath查询的模板文件 162
5.6.2  内联(inline)映射模式 162
5.6.3  URL中的映射模式 163
5.7  模式缓存和性能 164
5.8  小结 164
第6章  使用XPath查询 165
6.1  实现限制 165
6.2  和W3C规范的区别 166
6.3  XPath数据类型 167
6.3.1  XPath转换 167
6.3.2  节点集转换 168
6.3.3  SQL Server的CONVERT函数 169
6.3.4  将XDR数据类型映射为XPath数据
类型 169
6.4  位置路径 171
6.4.1  指定一个节点测试 171
6.4.2  指定轴 173
6.4.3  子元素 175
6.4.4  孙 176
6.4.5  父“..” 177
6.4.6  属性 178
6.4.7  指定选择谓词 179
6.4.8  使用布尔谓词 179
6.4.9  关系算子 183
6.4.10  算术算子 184
6.4.11  指定显式转换函数 185
6.4.12  指定XPath变量 186
6.5  通过HTTP访问数据库对象 187
6.6  小结 190
第7章  FOR XML 191
7.1  语法 192
7.2  FOR XML的限制 192
7.2.1  SELECT语句 192
7.2.2  返回行集的CREATE VIEW语句 193
7.2.3  FOR XML奇怪的地方 193
7.2.4  派生表 193
7.2.5  CAST算子 196
7.2.6  其他的限制 196
7.3  RAW模式 196
7.4  AUTO模式 197
7.4.1  表名字的别名 199
7.4.2  GROUP BY和聚合函数 200
7.4.3  计算列 201
7.5  EXPLICIT模式 202
7.5.1  通用表 202
7.5.2  元素指令 206
7.5.3  hide指令 208
7.5.4  CDATA指令 208
7.5.5  ID、IDREF、IDREFS指令 209
7.5.6  用sql:overflow-field检索未使用的
数据 212
7.5.7  XMLTEXT指令 214
7.6  小结 215
第8章  OPENXML 217
8.1  使用OPENXML 217
8.1.1  OPENXML语法 218
8.1.2  OPENXML例子 221
8.2  元属性 227
8.2.1  元属性使用示例 229
8.2.2  经由HTML表单和OPENXML插入
记录 231
8.3  小结 235
附录A  Northwind数据库模式 236
附录B  正文中提到的XSLT指令参考 245
附录C  XPath函数及示例 247
附录D  Microsoft的XML数据类型 249
附录E  资源 250
附录F  IBM的XSL Editor 252
附录G  Microsoft的SQL Server XML View Mapper 255
术语表 260

教学资源推荐
作者: [美]杰弗里·A·霍弗(Jeffrey A. Hoffer) 海基·托皮(Heikki Topi) 拉梅什•文卡塔拉曼(Ramesh Venkataraman)著
作者: 何玉洁 编著
作者: (加)Jiawei Han, Micheline Kamber
作者: (美)Hector Garcia-Molina, Jeffrey D.Ullman, Jennifer Widom
参考读物推荐
作者: Scott W.Ambler
作者: 黄健宏 著
作者: 高斌 著
作者: 梁晶 李银兵 丁卫颖 编著