|
使用XML进行数据存储与备份的实现广告 使用XML进行数据存储与备份的实现
软件设计中心嵌入式应用研发处 2001 年 12 月 XML(eXtensible Markup
Language,可扩展标记语言)作为一种数据标记语言正在不断引起人们的关注,XML的可扩展性已经受到了越来越多的人的关注,特别是在跨平台的数据交换当中,XML技术的运用可以轻松的解决这个问题.越来越多的企业宣布将在他们的产品中增加对XML的支持,Microsoft未来的发展战略.net的实现也是完全基于XML语言,由此可见,XML将在今后的数据传输和交换发展中占据越来越重要的作用。 XML不象HTML,HTML仅仅提供了在页面上显示信息的通用方法(没有上下文相关和动态功能) ,XML则对数据赋予上下文相关功能,它继承了SGML的大部分功能,却使用了不太复杂的技术。因此我们要明白XML不是HTML的一种替代品.在将来最可能的是网站开发者使用XML来描述网站所需数据和网站的结构,而HTML将用来格式化和显示这些数据. XML不是HTML的替代品,两者的用途是不同的,XML是被设计用来描述数据和定焦与数据是什么,而HTML是被设计用来显示数据和定焦与数据是什么样子的。XML是基于数据的语言,是关于如何描述信息的,它只关注与内容,而HTML是关于如何显示信息的, 它更关注于样式.,传统的HTML对内容的支持非常简单,这就是设计大型WEB网站的时候,一定要使用数据库,因为HTML无法提供对大量内容的支持。 另外,也是非常重要的是XML是可扩展的,在HTML中所有的标志(tags)和文档结构都是预先定义好了的,我们必须使用那些标准的HTML标志,XML允许我们自定义自己的标志和自己的文档结构. 怎样用XML存储和备份数据 传统的数据库存储大都是通过数据库来实现的,数据库的出现给我们带来了很大的便利,提供的快速的信息搜索查询方式,但是数据库也给我们带来了一些不便,现在数据库系统特别的多,像Oracle,Sql Server,Linux下的自由软件MYsql等,他们各自有不同的标准,并且存在于不同的操作系统,以往要在他们之间交换数据尽管可行,但是非常困难,其实通过XML可以很轻松的实现。 XML在数据库应用方面可以有以下用途: 1、 备份数据库 使用XML来备份数据库可以灵活的将数据库中的信息转移到其他的平台和数据库系统中,而且备份数据库占用的空间也非常小,在MicroSoft的Sql Server2000中已经提供了对XML强大的支持,它通过For XML来将数据库中的记录导出为XML格式,可以通过Open Xml将数据从XML中导入到数据库中。这里就不介绍了,下面介绍这样通过WEB方式将Access数据备份到XML文件中,本文使用的数据库是E-home中厨房系统中的菜谱数据库,数据库主要有一个表FOOD,包含id,name,info,type,number,time字段,以下是在Win2000环境下备份ACCESS数据库的代码:(环境Win2000+IIS) 文件名:FoodBackup.asp <html> dim objconn set objrs=server.CreateObject("Adodb.RecordSet") set
objfs=server.CreateObject("Scripting.FileSystemObject") xmlfile.writeline "<foodlist>" while not objrs.EOF objrs.MoveNext xmlfile.writeline "</foodlist>" objrs.Close xmlfile.close %> 通过以上代码就可以实现对ACCESS数据库FOOD中表food的备份,只需要在本文件的基础上进行改动,就可以实现自由选择数据库中的表进行备份了。备份前文件的大小是3.65M,备份后经过Winzip压缩后的大小只有225KB,只需要通过对以上文件进行改动,也可以实现对Oracle,Excell.Access,Visual Foxpro等数据库信息的备份。 我们还可以通过PHP操作来对其他数据库进行备份,以下是在Linux下通过Apache+PHP对Mysql数据库的备份的文件代码: 文件一、Listtable.php (文件列出数据库中的所有表格,供选择备份) <html> ?> 文件二、Backup.php <?if ($table=="")
header("Location:listtable.php");?><html> 通过以上文件的操作就可以实现对数据库中选定的表格进行备份. 以上主要介绍了两中方式的通过XML备份数据库的操作方法,其实并不复杂,通过XML,我们可以备份各种各样的数据库,当然也可以通过相关的方法将备份的XML文档恢复到数据库中,这里就不详细描述了。 2、 在不同的数据库之间交换数据 XML的另外一个特性就是可以用于在不同的数据库中交换数据,就象上面描述的一样,我们可以将一个系统中的某种类型数据库文件用XML导出,然后到另外一个系统中的其他数据库中将数据进行导入就可以了,XML使得跨平台的不同数据库之间的数据交换变得更加方便。 如果我们要将Oracle中的数据发送给Sql Server?如果我们不使用XML,一切将非常复杂,而使用XML将Oqacle中的数据封装在一个XML文件中就可以被另外的数据库系统读入,如SQL Server. 3、 显示数据 由于XML本身只关注内容,因此对于显示数据,它自己本身并不能进行,XML的数据显示方式也特别多,可以通过CSS(Cascading Style Sheet),XSL(extensible Stylesheet Language)或者Data Binding(数据绑定)等多种方式来显示。 由于XML是数据和样式分离的,所以,我们可以按照我们自己的想象任意改变数据的显示格式而不用对XML文档进行任何操作,这一切将使数据边得更加的灵活和自由。 由于XML的显示详细描述起来比较复杂,这里就不详细介绍了。 4、
本身作为数据存储 1)信息数据比较复杂: 另外,如果你的系统有多个服务器和数据库系统,就可以使用XML了,XML可以轻松的将数据从Linux转移到Windows平台上。另外,还可以考虑将XML作为数据库做为长期存储的选择。 什么时候不用XML进行数据存储 任何一项技术都有弊端,XML也有不适合的时候,但是它将挑起所有数据的处理和传输的重任,这也是XML诞生的一个重要原因。今后,我们会在更多的产品和应用中看到XML的存在,特别是在数据传输的时候。 周速华 如果您希望与本文章的作者或其所在机构,进一步交流,请联系:畅享网 姜小姐 jill.jiang@amt.com.cn | 021-51096826-112 | 在线联系 |
CIO职场,强者生存?在2008年,我们将继续看到CIO向商业运营方向发展。与此同时,我们也会看到商业管理人员将与技术管理人员一起竞争CIO岗位。 IT领导者的就职机会虽有不少,但其难度将会大幅提高。2…… |
|
|