数据库记录与XML数据转换

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浅谈数据库记录与XML数据的转换

摘要:xml作为一种保存信息和处理信息的标记语言,其语法的灵活性和真正的“扩展性”,使其能适应不同的数据类型,在intenet 数据传输与发布中发挥了越来越重要的作用。本文主要讨论了在web开发中如何将数据库数据转换为xml文档。

关键词:xml;数据库;记录集对象;转换

中图分类号:tp311.13

xml是一个精简的sgml,它将sgml的丰富功能、html的易用性结合到web的应用中。xml作为新一代的网络描述与传述语言,一经出现就表现出html所不具备独特优势:数据与格式相分离,良好的格式,dtd和schema两种验证机制。而xml数据在很多方面都与传统的关系数据库和对象数据库有相似之处,通过一定的处理方式,可以将数据库记录导出至xml文档中,可以方便的在web中显示、添加、删除记录。

1 xml的优势

在实际应用中,将数据库记录转换为xml格式的数据是具有很多优势:第一,xml是一种纯字符的数据格式,具有数据描述简单,传递快速的特点;第二,xml具有无平台性,而数据库集合与记录集等对象通常都于特定的平台相关联,通过xml将多个数据源记录导入到一个xml文档中,方便的建立数据整合;第三,xml文档的树状数据结构可映射为传统的层次型数据库系统。

2 xml文档结构

在实际应用中,我们可以将xml文档分为两大类:数据为主的xml 文件和以文档为主的xml文件。

2.1 数据为主的xml文件。由于xml文件具有开放性、易扩展性和丰富的显示样式(css、xsl等),以xml文档来存储数据在web 开发中应用越来越多。如在电子商务中用来存储客户信息、或是在信息系统开发中存储学生成绩、销售清单、图书列表等。

例如存储学生信息,信息内容主要包括学号、姓名、性别、系部、专业等。其对应的二维表关系如下表

其xml文档实例如下:

wl001

张梅

信息工程系

计算机网络技术

......

2.2 文档为主的xml文件。主要是指存储了大量不规范结构与原始数据的文件或混合内容,如一首歌曲、一封电子邮件以用xhtml

文档等。如:

dear mr.john smith.

your order 1032

will be shipped on 2009-07-13.

3 xml文档转换的方式

3.1 生成xml结点树方式,通过遍历数据源对象记录集和使用dom 建立一个xml结点树。最后返回一个xml dom对象。如:

3.2 直接生成xml字符串。将数据库记录直接以xml标记代码的形式生成xml文件。

”+””;

objrecorderset.movefirst();

while (!rs.eof) {

strxml = strxml + “”;

strxml = strxml + “”

+ objrecorderset.fields.item(“id”).value;+””;

strxml = strxml + “”

+ objrecorderset.fields.item(“name”).value;+””;strxml = strxml + “”

+ objrecorderset.fields.item(“sex”).value;+””;

//...... 依次添加所有结点数据,省略

strxml = strxml + “”

objrecordetset.movenext();

}

strxml = strxml + “”;

bjrecordetset = null;

%>

4 小结

将数据库记录转换为xml文件应注意几个问题:一是xml不支持任何有意义的数据类型,所有xml文档中的数据都被当成文本来对待,虽然它能够用其它数据类型表示(如日期类型和整数类型);二是转换中对实体不做任何编码处理;三是在xml中,空元素或包含长度为0的属性可以认为是null,但数据库不是这样处理;四是xml支持unicode字符,但很多数据库并不支持,须选择其他的字符集。

参与文献:

[1]陈美霖.xml电视讲座培训教程[m].北京:清华大学出版社,2004.

[2]丁跃潮.xml实用教程[m].北京:机械工业出版社,2008.

[3]xml中国论坛.xml实用进阶[m].北京:清华大学出版社,2001. 作者简介:巨峰(1974.4-),男,安徽省铜陵市人,安徽工业职

业技术学院信息工程系教师,讲师,工程师,主要从事计算机专业网页设计方向的专业课程教学工作。

作者单位:安徽工业职业技术学院,安徽铜陵 244000

相关文档
最新文档