




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2 第1页 第20章XML技术 本章概述本章要点本章内容 2 第2页 本章概述 在支持WWW的技术中 可扩展标记语言 eXtensibleMarkupLanguage 简称为XML 被认为是最重要的技术之一 XML已经对数据的存储和处理产生了深远的影响 并且今后其优势会更好地展现出来 实际上 XML是一系列相关技术的集合 这些技术包括DTD XMLSchema CSS和XSLT等 本章将介绍MicrosoftSQLServer2008系统中获支持的XML技术 2 第3页 本章要点 为什么要使用XML语言类型化数据和非类型化数据的特点XML数据类型的特点XML架构的作用和使用方式XQuery exist modify技术的特点FORXML子句的类型和使用方式XML索引的类型和特点OPENXML函数的作用和使用方式 2 第4页 本章内容 20 1概述20 2XML数据类型20 3查询XML数据20 4使用FORXML子句20 5使用XML索引20 6使用OPENXML函数20 7本章小结 20 1概述 MicrosoftSQLServer2008系统通过引入更多的功能增强了对XML数据的支持 MicrosoftSQLServer系统提供了XML数据类型用来存储XML数据 XQuery和XSD eXtensibleschemadefinition 即 可扩展的架构定义 支持这种XML数据 并且这种XML数据与MicrosoftSQLServer2008关系型数据库引擎紧密集成 MicrosoftSQLServer2008提供了XML触发器 XML数据复制 大容量的XML数据插入等操作的支持 2 第5页 20 2XML数据类型 XML数据类型是MicrosoftSQLServer2008系统为了增强XML技术支持而引入的新功能 就像INT CHAR等数据类型一样 XML数据类型可以用在表中列的定义中 变量的定义中和存储过程的参数定义中 XML数据类型既可以存储类型化数据 也可以存储非类型化数据 如果存储在XML列中的数据没有与XSD架构关联 那么这种数据是非类型化数据 如果存储在XML列中的数据与XSD架构关联 那么这种数据就是类型化数据 2 第6页 创建ProductInfo表 2 第7页 使用INSERT语句插入XML数据 2 第8页 使用INSERT语句插入一个不正确的XML数据 2 第9页 使用INSERT语句插入一个不一致但是正确的XML数据 2 第10页 定义ProductDescXMLSchema架构 2 第11页 定义一个与ProductDescXMLSchema架构关联的表 2 第12页 插入符合XSD架构的XML文档 2 第13页 插入不符合XSD架构的XML文档 2 第14页 查看定义的XSD架构文本信息 2 第15页 20 3查询XML数据 对于XML列中的数据 可以使用相应的技术对其进行操纵 这些技术包括XQuery技术 Exist技术和Modify技术 下面介绍这些技术 2 第16页 使用XQuery技术 XQuery是一种可以查询结构化或半结构化XML数据的语言 由于MicrosoftSQLServer2008系统提供了对XML数据类型的支持 因此可以将XML文档存储在数据库中 然后使用XQuery语句进行查询 XQuery基于现有的XPath查询语言 并且支持迭代 排序结果以及构造必须的XML的功能 Transact SQL支持XQuery语言的子集 2 第17页 查询多个元素 2 第18页 查询单个元素 2 第19页 查询类型化数据 2 第20页 使用XML数据类型方法 MicrosoftSQLServer2008系统提供了一些内置的可以用于XML数据类型的方法 与普通关系型数据不同的是 XML数据是分层次的 具有完整的结构和元数据 XML数据类型方法可以用于提取存储在XML数据类型中的XML文档的内容 这些方法包括Exist方法 Modify方法 Query方法 Value方法等 Query方法在20 3节中已经涉及了 下面主要讲述Exist方法和Modify方法 2 第21页 使用XMLExist方法 2 第22页 使用XMLModify方法 2 第23页 20 4使用FORXML子句 使用FORXML子句可以把MicrosoftSQLServer2008系统的表中数据检索出来并且自动表示成XML的格式 在MicrosoftSQLServer2000版本中 FORXML有3种模式 即RAW AUTO和EXPLICIT 在MicrosoftSQLServer2008系统中 由于增加了XML数据类型 因此也增强了FORXML的功能 这些增强功能包括TYPE模式 PATH模式 嵌套FORXML查询和内联XSD架构等 下面将详细地研究这些内容 2 第24页 FORXMLRAW FORXMLRAW是最简单的FORXML模式 该模式将查询结果集中的每一行转换为带有通用标识符或可能提供元素名称的XML元素 在默认情况下 行集中非NULL的每列值都将映射为元素的一个属性 也就是说 RAW模式表示元素名称是row 属性名称是列名称或列的别名 2 第25页 使用FORXMLRAW模式 2 第26页 按照XML结构查看检索结果 2 第27页 FORXMLAUTO 使用FORXMLAUTO也可以返回XML文档 但是 使用AUTO关键字和使用RAW关键字得到的XML文档形式是不同的 使用AUTO关键字 MicrosoftSQLServer使用表名称作为元素名称 使用列名称作为属性名 SELECT关键字后面的列的顺序用于确定XML文档的层次 2 第28页 使用FORXMLAUTO 2 第29页 使用FORXMLEXPLICIT 2 第30页 使用TYPE指令 由于SQLServer2008系统支持XML数据类型 因此可以通过指定TYPE指令 将FORXML查询结果返回为XML数据类型 方便在服务器上处理FORXML的查询结果 2 第31页 使用FORXMLPATH 作为一种新增功能 FORXMLPATH子句比FORXMLRAW和FORXMLAUTO子句的功能强大 并且比FORXMLEXPLICIT子句更加简单 FORXMLPATH子句允许用户指定XML树状数据中的路径 FORXMLPATH子句可以更加简单地完成FORXMLEXPLICIT子句具备的功能 2 第32页 嵌套的FORXML查询 MicrosoftSQLServer2000系统限定FORXML子句只能用在查询语句的顶层 不能在子查询中使用FORXML子句 但是 MicrosoftSQLServer2008系统增强了这方面的功能 用户可以在子查询中使用FORXML子句 从而实现嵌套的FORXML查询 例如 在如图20 24所示的示例中 使用了一个嵌套的FORXML查询 2 第33页 内联XSD架构生成 在FORXML子句中 可以请求在查询返回结果的同时返回一个内联架构 如果需要XSD架构 可以使用XMLSCHEMA关键字 需要注意的是 只能在RAW和AUTO模式中指定XMLSCHEMA 不能在EXPLICIT模式和PATH模式中指定内联XSD架构 2 第34页 20 5使用XML索引 XML数据类型支持最大达2GB的数据 当查询XML数据时 XML数据将会对系统的性能带来巨大的影响 为了提高XML查询的性能 可以在具有XML数据类型的列上创建索引 XML索引可以分为两个类别 即主XML索引和辅助XML索引 2 第35页 创建XML索引 2 第36页 20 6使用OPENXML函数 20 4节已经讲过 使用FORXML可以把MicrosoftSQLServer系统中的数据生成XML文档 使用OPENXML则是使用FORXML的逆过程 也就是说 使用OPENXML可以从XML文档中返回数据的行集 2 第37页 使用OPENXML函数示例 2 第38页 20 7本章小结 本章介绍了XML技术 首先 介绍了XML技术的演变和发展历程 其次 详细介绍了XML数据类型的特点和使用方式 分析了类型化数据和非类型化数据的特点 接下来 对查询XML数据技术进行了分析 之后 介绍了XML索引的类型和特点 最后 讨论了OPENXML函数的作用和使用方式 2 第39页 思考和练习
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025湖北交投集团部分子公司管理岗位遴选88人考试参考试题及答案解析
- 城市更新停车位与出行引导方案
- 2025年葫芦岛市连山区公开选调教师22人考试参考试题及答案解析
- 物业会计题库及答案
- 装修劳动力资源配置方案
- 自家房屋装修包工不包料合同样书
- 股权股份转让协议
- 2025年南平广播电视台招聘1人备考练习试题及答案解析
- 2025年大庆市建设中等职业技术学校外聘教师2人考试参考试题及答案解析
- 2025年通风工试题及答案
- 2025年度房屋拆迁补偿安置房买卖协议
- 南昌市小学二年级 2025-2026 学年数学秋季开学摸底测试卷(人教版)含解读答案
- 电子竞技赛事策划与组织运营管理方案设计
- 人教版(2024)八年级上册数学全册教案
- 2025年智慧城市信息化运维服务合作合同模板
- 职工职业健康体检实施方案与标准
- 2025年部编版新教材语文九年级上册教学计划(含进度表)
- 2025年多省公务员联考公安基础知识考试真题(附答案)
- 2025年税务副科领导干部面试题及答案
- 基孔肯雅热培训测试题含答案
- 食堂工作人员食品安全培训
评论
0/150
提交评论