第十章XML数 据库 技术

上传人:w****i 文档编号:91052410 上传时间:2019-06-21 格式:PPT 页数:67 大小:752KB
返回 下载 相关 举报
第十章XML数 据库 技术_第1页
第1页 / 共67页
第十章XML数 据库 技术_第2页
第2页 / 共67页
第十章XML数 据库 技术_第3页
第3页 / 共67页
第十章XML数 据库 技术_第4页
第4页 / 共67页
第十章XML数 据库 技术_第5页
第5页 / 共67页
点击查看更多>>
资源描述

《第十章XML数 据库 技术》由会员分享,可在线阅读,更多相关《第十章XML数 据库 技术(67页珍藏版)》请在金锄头文库上搜索。

1、第十 章 XML与数据库的交换,10.1 概述 10.2 数据岛 10.3 XML数据源对象 10.4 数据集操作 10.5 XML数据转换为数据库 10.6 XML数据库,10.1 概述,XML的数据交换技术,除了CSS、XSLT外,还有数据岛和数据源技术。数据岛和数据源技术是以HTML作为载体显示XML数据文件的另外一种技术。 把XML数据文件嵌入HTML文本中,作为提供数据的模块,借助HTML可以方便地在浏览器上浏览这个XML数据文件。 把XML转换成传统数据库,或把传统数据库的表转换成XML数据,需要用到ASP (Active Server Pages)技术和ADO(ActiveX D

2、ata Object)技术。,10.1 概述,在XML技术出现之后,各种传统数据库相继推出了自己的支持XML的解决方案来实现传统数据库与XML之间的转换。 作为数据存储载体,XML文档也可以作为数据文件使用,同样可以完成传统数据库存储数据的任务和功能。因而提出了XML数据库的概念。 本章将分别详细讨论上述问题。,10.2 数据岛 10.2.1 基本概念,在HTML中通过在元素内包含XML文档。XML文档可以是内嵌式文档,也可以是外部文档。使得XML文档像一个用HTML承载的小船一样,因而叫做数据岛。要在HTML文档中加载XML文档,使用来实现。元素的语法格式为: 当元素中只定义了id属性值时,

3、称XML文档为内嵌式文档。当元素中只定义了id属性值和src属性值,称XML文档为外部文档,此时src的值一定是外部XML文档的URL。,10.2.2 简单XML文档的处理,根元素下只有二层元素结构,与简单表格对应的XML文档称为简单XML文档。例如下面的文档(ch10-1.xml)中根元素files下有若干个file,file下有四个子元素,子元素没有下级子元素: XML Design Word Document 2007-11-25 73kb ,10.2.2 简单XML文档的处理, ASP Design Word Document 2003-10-15 680kb 2005 Test Sc

4、ores Excel Document 2006-1-20 65kb ,10.2.2 简单XML文档的处理,此时,使用内嵌式数据岛的形式如下: ,10.2.2 简单XML文档的处理,这种形式使HTML文档显得十分臃肿,可读性下降。最好采用调用外部文档的数据岛形式来加载XML文档。 其中src的值是一个XML文档。这种形式的叫做外部文档的数据岛。,10.2.2 简单XML文档的处理,为了把数据岛的XML文档显示在浏览器上,需要在HTML文档中设计数据显示的模块。此时可以使用表格(table)元素来显示数据。 引用数据岛时,使用了table元素的datasrc属性绑定数据源,该属性通过元素中的id

5、属性值来加载数据岛中,10.2.2 简单XML文档的处理,的数据。如datasrc=“#files”。然后使用div或span元素d的datafld属性用于绑定数据源中的元素,datafld的值是需要显示的元素名称,如datafld=“type”。 例10.1 用数据岛形式加载例7.10的XML文档,并显示。 完善上述讨论,增加显示数据的表格,并为美化数据显示效果设计了简单的CSS,其完整的程序参考P.311。其效果如下:,图10.1 HTML加载XML数据岛的显示结果,10.2.3 多级XML文档的处理,当元素多级嵌套时,如何显示数据?如例1.2的XML文档(ch10-2.xml),在stu

6、dent的子元素score下还有一级子元素,此时的文档树结构如图10.2所示。,10.2.3 多级XML文档的处理,因为score下嵌套子元素,所以在表示student的子元素score时,需要在表示score单元格中嵌套一个表格table来实现,并在table中使用datafld=“score“引用score元素,方法如下: 然后把此表格嵌套在表示score元素的单元格中。,10.2.3 多级XML文档的处理,例10.2 用数据岛形式加载例1.2的XML文档。 这是一个根元素下面有三级子元素的多级结构的XML文档,使用上面的讨论,可以实现嵌套元素的显示。程序参考P.314。效果如下图:,图1

7、0.3 HTML加载嵌套XML数据岛的显示结果,10.3 数据源对象 10.3.1 基本概念,数据源对象(Data Source Object,DSO)是在HTML文件中加载结构化数据的一种对象。数据源对象必须创建实例方能使用。常用的数据源对象有表格式数据控制(Tabular Data Control),远程数据服务和XML数据源。不同类型的数据格式,有不同类型的DSO,不同类型的DSO有不同的数据处理方式。此处,我们讨论用XML DSO来处理XML数据的问题。,10.3.2 处理数据源对象,建立数据源对象的方法使用HTML的元素,的形式如下: 下面是通过元素创建的XML DSO实例: 其中,

8、classid值不能写错,id值是需要建立实例的DSO对象。这个元素创建的XML DSO可以用下列脚本来处理:,10.3.2 处理数据源对象, var xmlDoc=xmldso.XMLDocument; xmlDoc.async=“false“; xmlDoc.load(“); if(xmlDoc.parseError !=0) /显示错误信息 document.write(xmlDom.parseError.reason); else /显示成功信息 处理语句 通过XML DSO对象xmldso的方法XMLDocument来创建XML DOM对象xmlDoc。,10.3.2 处理数据源对象

9、,例10.3 使用XML DSO处理XML文档。 程序参考P316。效果如下图:,图10.4 XML DSO的显示结果,作为一个文件形式保存在计算机系统中的XML文档,使用DSO来操作它们时,类似于操作传统关系数据库。统关系数据库。在一个关系数据库实例中,数据的组织使用若干个表格来管理数据。每个表格可以看成是一个二维表,表的每一列叫做数据项或字段,表格的一个行称为一条记录,一个表格包含若干字段和若干行。若干行的集合称为记录集(recordset)。 结构化XML数据可以与一张表格对应,相应地,每一列是一个元素,每一行被认为是一条记录,包含若干个元素。如表1-1所示,就是一张普通的表格。这样,处

10、理XML数据的方法可以使用结构化数据操纵方式处理。,10.4 数据集操作 10.4.1 数据集的概念与操作,10.4.1 数据集的概念与操作,在操作XML文档数据时,DSO允许从一行数据移动到下一行数据,添加、删除、修改数据记录等,这些操作使用recordset来实现。表10.1是recordset对象的属性和方法。 为了讨论方便,假定XML数据源的名称是mydatas,下面讨论对该对象的操作。 1、移动指针 移动记录指针到第18条记录: mydatas.recordset.move(18) 移动记录指针到第一条记录: mydatas.recordset.moveFirst,10.4.1 数据

11、集的概念与操作,表10.1 recordset对象的属性和方法,10.4.1 数据集的概念与操作,移动记录指针到最后一条记录: mydatas.recordset.moveLast 移动记录指针到前一条记录: mydatas.recordset.movePrevious 移动记录指针到下一条记录: mydatas.recordset.moveNext 2、添加记录 在记录集中增加一条记录: mydatas.recordset.AddNew,10.4.1 数据集的概念与操作,4、修改记录 在记录集中修改数据,要使用field()属性指定某个字段。使用下面的语法可以修改一个字段: mydatas.

12、recordset.field(“num”)=”2004051209” 5、循环操作 当需要操作整个记录集时,必须让记录指针遍历所有的记录,此时使用循环控制,可以方便地解决问题。使用VBScript和JavaScript的语法如下: do while not mydatas.recordset.eof mydatas.recordset.moveNext loop,10.4.1 数据集的概念与操作,使用JavaScript的语法如下: while(!mydatas.recordset.eof) mydatas.recordset.moveNext; 例10.4 以例7.1的XML文档为例讨论,

13、使用数据源转换XML文档。用于转换的的HTML文件参考P.319。效果如下图。,图10.5 例10.4的显示效果,10.4.2 移动指针,设置四个按钮,分别是“第一条”、“最后一条”、“上一条”、“下一条”,并把属性onclick设置成相应的移动操作: 例10.5 在例10.4的基础上增加按钮。 程序参考P.320 效果如下图。,10.4.2 移动指针,图10.6 例10.5的显示效果,10.4.2 移动指针,在例10.5的文件中,可以在记录中移动指针。但是当指针到达末尾时,再单击“下一条”会出现空白。这是因为指针到达尾部时,已经没有记录了,所以会出现空白记录。另外,当指针位于第一行时,单击“

14、上一条”也会出现空白,是因为第一条记录之前已经没有记录。使用数据集的eof和bof,可以解决这个问题。 为了把事件与操作联系起来,在例10.5的input中加入name属性定义按钮名称: ,10.4.2 移动指针,然后在事件onclick中引用这些按钮,并进行简单编程: sub pre_onclick() if shirt.recordset.bof then shirt.recordset.moveLast end if end sub sub next_onclick() if shirt.recordset.eof then shirt.recordset.moveFirst end i

15、f end sub 修改后的HTML文件参考P.321322。,10.4.3 ASP对象,1、简介 ASP(Active Server Pages)是一套微软开发的服务器端脚本编写环境,包含在基于Windows NT(Windows 2000/2003/2007 Server)的IIS(Internet Information Server)内。通过ASP可以结合HTML页、脚本语言源程序、ActiveX控件建立动态的、交互的、高效的Web服务器应用程序。 ASP应用程序以.asp作为文件的扩展名。浏览器从服务器上请求.asp文件时,ASP脚本开始运行。然后Web服务器调用ASP,ASP读取请

16、求的文件,执行脚本命令,由脚本解释器,10.4.3 ASP对象,(即脚本引擎)进行翻译并将其转换成服务器能够执行的命令,然后,将执行的结果以标准的HTML形式传送给浏览器。 ASP的特点: 1)、使用脚本语言编程。常用的脚本语言有VBScript、JavaScript、Perl等等。 2)、当使用Windows NT作为服务器并在其上运行IIS时,就自动拥有了ASP的运行环境。对于不具备Windows NT环境的一般单机用户,可以在Windows 98下安装PWS(Personal Web Server),在PWS下运行ASP。也可以在自己的XP环境中加载IIS模块。,10.4.3 ASP对象,3)、使用内置ADO(ActiveX Data Object)组件, 与SQL Server、Microsoft Access等数据库进行连接。这为 ASP的数据库应用提供了方便,使得ASP成为Internet上开发数据库应用的较理想的工具之一。 4)、ASP使用内置对象组件,处理来自客户浏览器的Form提供的数据。这些对

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号