版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库系统概论第四版数据库系统概论第四版chp(I) 中国人民大学信息学院 数据库系统概论数据库系统概论An Introduction to Database System第十六章第十六章 XMLXML数据库数据库数据库系统概论第四版数据库系统概论第四版chp(I)第十六章 XML数据库16.1 概述概述16.2 XML简介简介16.3 XML数据模型数据模型16.4 SQL/XML16.5 小结小结数据库系统概论第四版数据库系统概论第四版chp(I)16.1 概述XML(eXtended Markup Language) 可扩展的标记语言用户可以定义自己的标记,用来描述文档的结构W3C(Wo
2、rld Wide Web Consortium)在1998年制定的一项标准,用于网上数据交换 是标准通用标记语言SGML的一个子集 数据库系统概论第四版数据库系统概论第四版chp(I)概述(续)XML在SGML和HTML的基础上发展起来的相对于HTML,XML具有如下的一些特点:更多的结构和语义 可扩展性自描述性 数据与显示分离简洁性数据库系统概论第四版数据库系统概论第四版chp(I)第十六章 XML数据库16.1 概述概述16.2 XML简介简介16.3 XML数据模型数据模型16.4 SQL/XML16.5 小结小结数据库系统概论第四版数据库系统概论第四版chp(I)16.2 XML简介一
3、、XML说明(XML declaration)对XML文档处理的环境和要求的说明必须在文档的第一行 例如:数据库系统概论第四版数据库系统概论第四版chp(I)二、元素元素(element)是XML文档的主要组成部分标记名区分大、小写开始于字母或下划线(_),后面可以跟任意长度的字母、数字、句点(.)、连接符(-)、下划线或冒号 起始标记形式是,终止标记形式是嵌套有且只有一个根元素数据库系统概论第四版数据库系统概论第四版chp(I)元素(续) Beijing Library Database System Concepts 26.50 Kaily Jone Silen Smith Introdu
4、ction to XML 18.80 Kaily Jone A Query language for XML 26.50 Kaily Jone 图图16.1 一个一个XML文档示例文档示例数据库系统概论第四版数据库系统概论第四版chp(I)三、属性描述元素的有关信息格式为:如。属性值必须出现在单引号或双引号中一个元素可以有任意多个属性,每个属性取不同的属性名 数据库系统概论第四版数据库系统概论第四版chp(I)四、处理指令处理指令(processing instructions)是为使用一段特殊代码而设计的标记为处理XML文档的应用程序提供信息。组成:处理指令名称和数据其格式为。例如 数据库系
5、统概论第四版数据库系统概论第四版chp(I)五、注释注释以结束注释可以在XML文档的任何地方插入 数据库系统概论第四版数据库系统概论第四版chp(I)六、良构的XML文档良构的(well-formed)XML文档是指:文档的构造从语法上都是正确的只有一个顶层元素,即根元素至少包含一个元素,即文档中必须有根元素所有的起始标记都有与之对应的终止标记,或者使用空元素速记语法所有的标记都正确的嵌套每一个元素的所有属性具有不同属性名 数据库系统概论第四版数据库系统概论第四版chp(I)七、实体用来定义重复使用的文档内容格式为: 例如引用实体的格式为&实体名当XML处理器遇到字符串&DW时
6、就用字符串Data Warehouse代替该实体DW数据库系统概论第四版数据库系统概论第四版chp(I)第十六章 XML数据库16.1 概述概述16.2 XML简介简介16.3 XML数据模型数据模型16.4 SQL/XML16.5 小结小结数据库系统概论第四版数据库系统概论第四版chp(I)XML数据模型XML数据是自描述的、不规则的,可以用图模型来表示 图16.1中的XML数据的图模型表示 元素标识名属性值对应集合元素文本内容数据库系统概论第四版数据库系统概论第四版chp(I)XML数据模型(续)XML数据 VS 半结构化数据(1) XML中存在参照 (2) XML中的元素是有序的(3)
7、XML中可以将文本与元素混合 (4) XML包含许多其他的内容XML数据模型:XML Information Set,Xpath1.0 Data Model,DOM model和XML Query Data Model数据库系统概论第四版数据库系统概论第四版chp(I)XML数据模型(续)这四种模型都采用树结构。表16.1 XML数据模型的比较XMLInformation SetXpath 1.0Data ModelDOM 1.0Level 2XML QueryModel对象XML文档XML文档XML(或HTML)文档XML文档或部分的集合定义方式对XML语法项的附加描述对一组结点类型的数据结
8、构和字符串值的描述一组对象接口的描述Constructor和accessor的功能描述是否要求DTD或XML Schema验证否否否是数据库系统概论第四版数据库系统概论第四版chp(I)16.3 XML数据模型16.3.1 XML DTD16.3.2 XML Schema数据库系统概论第四版数据库系统概论第四版chp(I)16.3.1 XML DTD文档类型定义DTD(Document Type Descriptors)用来描述XML文档的结构,类似于模式的概念DTD定义内容元素、属性元素出现的次序、出现的次数如何相互嵌套其他详细信息 数据库系统概论第四版数据库系统概论第四版chp(I)一、元
9、素的定义DTD定义元素的格式为: 例1 例2 例3 例4 例5 数据库系统概论第四版数据库系统概论第四版chp(I)二、属性的定义DTD中定义属性的格式为: 属性类型字符串类型枚举类型缺省声明n#REQUIRED,表示该属性在XML文件中必须出现n#IMPLIED,表示该属性在XML文件中可以缺省n声明缺省属性值 例6 数据库系统概论第四版数据库系统概论第四版chp(I)属性的定义(续)通常把DTD存储在一个后缀为.dtd的外部文件里例7 一个XML DTD 示例 数据库系统概论第四版数据库系统概论第四版chp(I)16.3 XML数据模型16.3.1 XML DTD16.3.2 XML Sc
10、hema数据库系统概论第四版数据库系统概论第四版chp(I)XML Schema定义XML模式的另外两个标准:nXML SchemanDocument Content Descriptors(DCDs)XML Schema用XML来定义其文档的模式,支持对结构和数据类型的定义 数据库系统概论第四版数据库系统概论第四版chp(I)XML Schema(续)XML Schema的例子 例8 数据库系统概论第四版数据库系统概论第四版chp(I)XML Schema(续)表16.2 DTD和XML Schema的特征比较Syntax in XMLNamespaceInclude &Import
11、Built-in typeUser-definedtypeDomain constraintExplicitNullDTDNoNoNo10NoNoNoXML SchemaYesYesYes37YesYesYesvXML Schema更为完善vDTD简便易用数据库系统概论第四版数据库系统概论第四版chp(I)XML Schema(续)良结构的文档有效的文档无效的文档数据库系统概论第四版数据库系统概论第四版chp(I)第十六章 XML数据库16.1 概述概述16.2 XML简介简介16.3 XML数据模型数据模型16.4 SQL/XML16.5 小结小结数据库系统概论第四版数据库系统概论第四版ch
12、p(I)16.4 SQL/XMLSQL2003标准增加了对XML的支持,定义了数据库语言SQL与XML结合的方式,扩展的部分称为SQL/XML数据库系统概论第四版数据库系统概论第四版chp(I)SQL/XML(续)功 能SQL/XML中的关键词数据类型定义XML强制数据类型转化XMLCAST字符串XMLXMLPARSEXML字符串XMLSERIALIZEXML发布函数关系数据XMLXMLELEMENT,(XMLNAMESPACES,XMLATTRIBUTES),XMLFOREST,XMLCONCAT,XMLAGG,XMLCOMMENT,XMLPIXML提取函数XMLXMLXMLQUERYXML
13、关系XMLTABLEXML布尔值XMLEXISTS表16.3 SQL/XML中的主要关键词及功能分类数据库系统概论第四版数据库系统概论第四版chp(I)SQL/XML(续)SQL/XML定义了新的数据类型XML数据类型,以及一组函数XML和关系数据间的双向转换数据库系统概论第四版数据库系统概论第四版chp(I)16.4 SQL/XML16.4.1 XML数据类型数据类型16.4.2 XML发布函数发布函数16.4.3 XML提取函数提取函数数据库系统概论第四版数据库系统概论第四版chp(I)16.4.1 XML数据类型原生(Native)SQL数据类型:XML数据类型,用“XML”表示例1 创
14、建一个书店表bookstore,其中bib列的类型是XML。 CREATE TABLE bookstore(id INT PRIMARY KEY,bib XML);数据库系统概论第四版数据库系统概论第四版chp(I)XML数据类型(续)例2 可以将一个XML文档加入书店bookstore中。 INSERT INTO bookstore VALUES (1492, xmlparse ( English ) );数据库系统概论第四版数据库系统概论第四版chp(I)XML数据类型(续)XMLCast将某种SQL预定义类型的数据转换为一种XML类型将某种XML类型的数据转换为其他的SQL预定义类型或X
15、ML类型格式 XMLCAST ( value-expression AS type )数据库系统概论第四版数据库系统概论第四版chp(I)16.4 SQL/XML16.4.1 XML数据类型数据类型16.4.2 XML发布函数发布函数16.4.3 XML提取函数提取函数数据库系统概论第四版数据库系统概论第四版chp(I)16.4.2 XML发布函数XML发布函数的作用:从关系数据创建XML结构一、XMLElement函数 创建一个XML元素,可以指定元素名字例3SELECT e.id,XMLELEMENT(NAME Emp,e.fname | | e.lname)AS resultFROM e
16、mployees e;数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)假设关系表employees如下: Idfnamelnamehiredept1001JohnSmith2000-05-24Accounting1206BobMartin1996-02-01Shipping查询返回的结果是:IDResult1001John Smith1206Bob Martin数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)嵌套使用例4 SELECT e.id,XMLELEMENT( NAME Emp, XMLELEMENT (NAME name,e.lname
17、 ), XMLELEMENT (NAME hiredate,e.hire ) ) AS result FROM employees e; 数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)查询返回的结果是:IDresult1001 Smith 2000-05-241206 Martin 1996-02-01数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)n参数是子查询例5 SELECT e.id,XMLELEMENT ( NAME Emp, XMLELEMENT (NAME name,e.lname), XMLELEMENT (NAME depen
18、dants, (SELECT COUNT (*) FROM dependants d WHERE d.parent=e.id) ) ) AS result FROM employees e;数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)返回的结果可能是:IDresult1001 Smith 3数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)二、XMLAttributes函数 为构建的元素生成一组属性仅在XMLElement函数中使用数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)例6SELECT e.id,XMLELEM
19、ENT (NAME Emp,XMLATTRIBUTES (e.id,e.lname AS name) AS resultFROM employees e;返回的结果可能是:IDresult10011206数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)三、 XMLNamespaces给出名空间Namespaces 例7SELECT e.id,XMLELEMENT(NAME admi:employee,XMLNAMESPACES( AS admi),XMLATTRIBUTES(e.workdept AS admi:department),e.lastname) AS re
20、sultFROM employees eWHERE e. job=ANALYST;数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)可能的结果是:IDresult1130QUINTANA1140NICHOLLS数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)四、XMLForest函数生成一组元素数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)例8SELECT e.id,XMLFOREST (e.hire,e.dept AS department) AS resultFROM employees e;结果是:IDresult1
21、0012000-05-24Accounting12061996-02-01Shipping数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)五、XMLConcat函数将两个以上的XML数据值串接起来例9SELECT e.id,XMLCONCAT (XMLELEMENT (NAME first,e.fname),XMLELEMENT (NAME last,e.lname) )AS resultFROM employees e; 数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)返回的结果可能是:IDResult1001JohnSmith1206Mary
22、Martinn如果某个结果返回空值,则不出现在串接中。数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)六、XMLAGG函数XMLAGG是一个聚集函数参数是一个XML数据类型的表达式数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)例10SELECT XMLELEMENT (NAME Department,XMLATTRIBUTES (e.dept AS name),XMLAGG (XMLELEMENT (NAME emp,e.lname) ) AS dept_list,COUNT(*) AS dept_countFROM employees eGR
23、OUP BY dept;数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)假设关系表employees加上了2条记录,共4条记录:Idfnamelnamehiredept1000TomYates2001-08-02Accounting1001JohnSmith2000-05-24Accounting1205MaryOppenheimer2000-01-19Shipping1206BobMartin1996-02-01Shipping数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)返回的结果是:dept_listdept_countYatesSmit
24、h2OppenheimerMartin2数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)nORDER BY子句指定返回值的串接顺序例11SELECT XMLELEMENT (NAME Department,XMLATTRIBUTES (e.dept AS name),XMLAGG (XMLELEMENT (NAME emp,e.lname)ORDER BY e.lname) AS “dept_list”,COUNT(*) AS dept_countFROM employees eGROUP BY dept; 数据库系统概论第四版数据库系统概论第四版chp(I)XML发布
25、函数(续)返回的结果是:dept_listdept_count Smith Yates 2 Martin Oppenheimer 2数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)七、XMLComment函数 生成注释例12XMLCOMMENT(This is a comment)结果生成数据库系统概论第四版数据库系统概论第四版chp(I)XML发布函数(续)八、XMLPI函数生成处理指令例13XMLPI(NAME includeFile,/POs/template.hls)结果生成 数据库系统概论第四版数据库系统概论第四版chp(I)16.4 SQL/XML16.4.
26、1 XML数据类型数据类型16.4.2 XML发布函数发布函数16.4.3 XML提取函数提取函数数据库系统概论第四版数据库系统概论第四版chp(I)16.4.3 XML提取函数一、XMLQuery函数XML数据的查询语言SQL/XML提供将XQuery嵌入SQL的机制,对存储在关系数据库中的XML数据可以用XQuery进行查询返回的数据类型为XML数据库系统概论第四版数据库系统概论第四版chp(I)XML提取函数(续)例14选出价格低于80的所有英文书,返回价格和作者名 SELECT XMLQUERY( for $bib in $doc/biblang/text()=English, $bo
27、ok in $bib/book WHERE $book/price 80 RETURN $book/price,$book/author/name PASSING bib AS doc RETURN CONTENT) AS result FROM bookstore;数据库系统概论第四版数据库系统概论第四版chp(I)XML提取函数(续)返回的结果可能是:Result Serge Abiteboul Roger Penrose nXquery中的return子句有构造XML的功能 数据库系统概论第四版数据库系统概论第四版chp(I)XML提取函数(续)二、XMLTable函数从XML数据中提取信息,返回结果是一个二维的关系表(列的定义用XPath路径表达式)数据库系统概论第四版数据库系统概论第四版chp(I)XML提取函数(续)例15 选出价格低于80的英文书,显示书名、作者名、出版年份和价格(返回关系表的格式)。SELECT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园游泳馆合同协议
- 技术转让合同范本范本
- 建材加工安装合同范本
- 建筑合同的安全协议书
- 高中化学二轮专题复习课堂配套专题三主观题突破原子或离子的核外电子排布教案(2025-2026学年)
- 小学一年级语文鲜花和星星教案
- 儿童代谢性肝病教案
- 部编版小学道德法治一年级上册教案(2025-2026学年)
- 小学生常用动词过去式表试卷教案(2025-2026学年)
- 高中化学鲁科版选修四化学能转化为电能电化学腐蚀防护教案(2025-2026学年)
- 服务质量评估与奖惩机制管理制度
- 【《MMC型电力电子变压器故障特性分析案例概述》7100字】
- 超尔星学雅习通答案能源中国作业试题及答案
- 新版膳食指南2025电子版
- 2025年心理咨询师实操技能考核试卷-心理咨询师实操技能考核习题集
- 施工安全风险分级管控和隐患排查治理监理工作制度
- 脂肪氧化酶抑制实验的影响因素及其调控机制研究
- CJ/T 235-2017立式长轴泵
- 反诈知识竞赛题库附答案(1 -286题)
- DB31/T 807.3-2018重点单位保安服务要求第3部分:安全检查
- 25春国家开放大学《医学统计学》形考任务1-4参考答案
评论
0/150
提交评论