admin 管理员组

文章数量: 1184232


2024年4月19日发(作者:access数据库软件安装包)

基于的XML与数据库数据交换

XML是一种简单、与平台无关并被广泛采用的标准。为什么有时要用XML

文件来存储数据而不使用数据库。是因为很多时候,用数据库太浪费。而且环境

要求较高,必然要使用一个数据库,安装和支持一个分离的服务器处理进程,还

要有安装和支持它的管理员来对数据库进行管理。必须会使用SQL语句,转换

数据等操作。而如果你用XML文件存储数据,就可以减少额外的服务器的负荷。

你只要使用文本编辑器,就可以对这些复杂的程序进行处理。下面将使用记录天

气信息来说明XML和数据库之间的转换。为了记录天气信息我们建立一个

数据库,在这个数据库中有一个weather表。

表1 Weather表

同时建立一个文档来说明它们之间的转换。

北京

多云

上海

广州

多云转晴

1 使用DataSet读取天气信息的XML文档并显示

XML Schema中还支持名域。一个Schema除了可以定义XML文档词汇表

外,还可以通过名域来定义目标名域,和其它可能会使用到的词汇名域。XML

Schema提供了一个丰富而更具弹性的机制来定义XML文档词汇表。它使用

XML语言本身来定义关于一个XML文档的元信息(meta-information),这使得

XML的协同工作能力大大的增强了。我们来看如何从xml文件中读取数据。

1.1 首先定义DataSet对象,并指要读取的XML文档路径,于使用DataSet

提供了ReadXml方法读取XML文档,并保存在DataTable对象中

DataSet mydataset = new DataSet();

l(h(”~/App_Data/”));

DataTable myTable = [0];

1.2 接下来使用循环用表格方式打印在网页上

foreach (DataColumn myColumn in s)

{

(”“ + myRow[myColumn] + ““);

}

(”“);

}

完成后运行,天气信息的XML文档就会以表格的形式打印要网页上。

2 将数据库中的天气信息导出为XML文件

XML还有一个更抽象的优点,即作为层次型的格式比关系型的更好。它可

以用一种很直接的方式来设计数据结构来符合你的需要。 所以有时要把数据库

的数据转换为XML文件。

数据访问是一个应用系统的核心。公用语言运行环境(Common Language

Runtime)提供了管理数据访问应用程序接口(API)的方法。而这些API将不

论它的数据源是什么,都能提取出我们所需要的数据。我们主要用:Connection,

Commands, 和 DataSet等三个对象。

2.1 首先要导入 和. OleDb这两个名字空间

2.2 接下来定义连接字符串

string connectionstr = “Provider=.4.0; Data Source =“ +

h(”~/App_Data/”);

2.3 定义连接对象

OleDbConnection Conn = new OleDbConnection(connectionstr);

2.4 打开数据库连接

();

2.5 使用数据适配器读取数据

OleDbDataAdapter da = new OleDbDataAdapter(”select * from weather”,

Conn);

DataSet mydataset = new DataSet();

(mydataset);

2.6 导出数据为XML格式

string xmlString = ();

(xmlString);

(”

“);

try

{ ream fs = new

ream(h(”~/App_Data/”),

);

ml(fs);

();

}

catch (Exception ce){ (e);

}

(”导出成功”);

();

完成上述步骤后,App_Data文件夹下就会生成一个天气信息

的XML文档,以便进行数据交换。

3 将天气信息的XML文档、文件写入数据

在很多应用中,依靠文件系统是不够充分的。如果更新很多,文件系统会因

为同时写入而受到破坏。数据库则通常支持事务处理,可以应付所发生的请求而

不至于损坏。对于复杂的查询统计要有反复、及时的更新,此时数据库表现都很

优秀。所以有时我们也需要把XML文档写入数据库进行保存和操作。下面是把

天气信息的XML写入数据库的方法。

3.1 定义连接字符串, 定义连接对象, 打开数据库连(下转第193页)(上

接第164页)接。步骤同上。

3.2 定义XmlDocument,并指定要读取的XML文档路径,以及在XML文

档中的根节点

XmlDocument xmld = new XmlDocument();

(h(”~/App_Data/”));

XmlNodeList xlml = Nodes(”NewDataSet/Table”);

3.3 循环遍历节点,并把取得的值使用SQL语句写入数据库中

for (int i = 0; i < ; i++)

{

city = xlml[i].SelectSingleNode(”city”).InnerText;

weather = xlml[i].SelectSingleNode(”weather”).InnerText;

(city + “|” + weather + “

“);

OleDbCommand comm = new OleDbCommand(”insert into weather values(‟”

+ city + “„,‟” + weather + “„)”, Conn);

eNonQuery();

}

完成上述步骤后,天气信息的XML文档就顺利保存进数据库中了。

以上可以看出通过XML你就很方便的进行数据交换,XML文件很容易备

份,和朋友共享,或下载到你的客户端。有了XML这种通用格式更可以与你的

手机进行数据交换。都可以随时备份进数据库里,XML与其它数据库系统的数

据交换也类似,请读者自己研究。

【参考文献】

[1]安博教育集团.XML程序开发[M].电子工业出版社,2012.

[2]张茂元,邹春燕,卢正鼎.一种基于语义匹配的Web信息提取方法研究[J].

计算机工程与应用,2006.

[3]韩双旺.下Web数据库访问技术研究[J].自动化与仪器仪表,2011.

[4]赵艳菲.基于.NET的XML数据的处理与实现[J].电脑知识与技术,2011.

[5]刘丽萍,张月琴.基于 的关系模式到XML Schema 的转换[J].

电脑开发与应用,2011.


本文标签: 数据库 文档 使用