admin管理员组

文章数量:1531455

2024年5月10日发(作者:)

ISSN 1009—3044 

Computer Knowledge and Techno ̄gy电脑知识与技术 

Vo1.7 No_28.October 2O1 1. 

E-mail:jsll@cccc.net.Cll 

http://www.dnzs.net.cn 

Tel:+86—551~5690963 5690964 

Pocket PC基于XML的异构数据库同步 

王璐 

(重庆邮电大学通信丁程学院,重庆400065) 

摘要:在嵌入式数据库领域,世界各大数据库厂商都有各自的移动解决方案,但每种数据同步方案都针对自己的数据库,不能兼容 

其他的数据库产品。该文介绍的是Pocket PC在微软的Windows mobile操作系统平台下,通过XML方式进行的一种跨平台的数据 

库同步方法。文中介绍了Pocket PC以XML方式分别对PC服务器中的Microsoft SQL Server数据库和Microsoft Access数据库的 

同步过程,并对比RDA.提出了优势和局限所在 

关键词:数据库同步:Windows mobile;Pocket PC;XML 

中图分类号:TP311 文献标识码:A 文章编号:1009—3044(2O11)28—6825—03 

Pocket PC Database Synchronization Based on XML 

WANG Lu 

(School of Communications&Engineering,Chongqing University of Posts and Telecommunications,Chongqing 400065,China) 

Abstract:In the ifeld of embedded database,the world S major database vendo ̄have their own mobile solutions,but each synchronization 

programs is designed for its own database,not compatible with other database produc ̄.The article describes the XML,as a cross—platform 

database synchronization method,in Microsoft S Windows mobile operating system platform.This paper introduces Pocket PC to the PC 

server in Microsoft SQL Server database and Microsoft Access database synchronization process by the XML wav and presents the advan— 

tages and limitations by contrasting RDA. 

Key words:database svnchronization:Windows mobile;Pocket PC;XML 

在Pocket PC的Windows mobile平台上,主流的数据库是Microsoft SQL Server CE.RDA是Microsoft SQL Server CE与服务器 

交换数据的一种传统的解决方案。RDA的优势在于除了能将数据同步之外,还可以将表结构进行同步复制,而同步的过程也是非常 

简单。但RDA的不足在于不但需要搭建专门的IIS等同步环境,而且只能在Pocket PC与PC联机的情况下,单一的与Microsoft 

SQL Server数据库进行数据同步,这就大大增加了使用其他类型数据库的系统集成商开发移动设备应用程序的难度,同时也不利于 

Windows mobile平台被更广泛的领域所接受。 

XML具备跨平台的数据交换能力,可以在不同的系统和数据库之间交换数据,实现异构数据库的同步。本文演示了利用XML 

进行同步的两个方案.分时是Pocket PC对PC中的Microsoft SQL Server和Microsoft Access数据库的同步。其中,XML对Microsotf 

SQL Server的同步具备联机和脱机的方式,相比RDA,扩大了同步应用的范围。在脱机同步中,省去了数据线、安装ActiveSync和搭 

建IIS同步环境等繁琐的工作,而且在Pocket PC上,无需依赖Microsoft SQL Server CE,这种方式能同步多种异构数据库,同时也简 

化了同步前的准备工作,减少了对服务器日常的维护工作,提高了工作的效率,弥足了RDA的不足。 

本文的实例中,给出了部分关键代码,使用语言为C#,PC服务器的操作系统为Windows Server 2003,加载了Microsoft SQL 

Server和Microsoft Access数据库;Pocket PC的操作系统为Windows mobile 6,加载有数据库Microsotf SQL Server CE,开发平台为 

VisualStudi02008。 

1 XML特性 

XML(Extensible Markup Language)即可扩展标记语言,是一种提供数据描述格式的标记语言,具有强有力的数据存储和分析能 

力。XMI 使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立.它具备跨平台的能力,可以为UNIX、LINUX等非 

Windows平台所接受。XML传输方式也可以多种多样,可以采用存储卡、红外、无线网、GPRS等任意一种方式进行。 

XML是自描述的、可交换的、能够以树型或图形结构描述数据。XML提供了许多数据库所具备的东西:存储、模式、查询语言、 

编程接1=I,所以作为一种数据的集合,XML文件就可称为数据库。XML实现了表示与数据的分离,通过应用不同的样式表和应用程 

序,可以根据需要显示和处理数据。一个XML交换文件包含两个部分,一个是XML的数据部分。另一个是XML架构,也就是XSD, 

可为XML文档定义结构和数据类型。 

2 XML对MierosoR SQL Server的数据同步过程 

2.1联机同步 

Pocket PC和加载有Microsoft SQL Server的PC进行联机数据交换时,需要安装移动设备与台式机的联机软件ActiveSync,待 

Pocket PC和服务器成功建立连接后,在Pocket PC中建立应用程序: 

收稿日期:2011-08—06 

作者简介:王璐(1985一),男,河南人,硕士研究生。 

本栏目责任编辑:代影 * 数据库与信息蕾理 6825 

Compu ̄rKnowledge and Technology电脑知识与技术 

第7卷第28期(2011年1O月) 

SqlConnection cnn=new SqlConnection(”selNer=X61;uid=sa;pwd=1 1;database=用户名 

//SQL的连接串 

da.Fill(ds,”UserTable”); //把采集到的数据填充到数据集中 

ds.WriteXml(@”Mv Documents\a.xml”.XmlWriteMode.WriteSchema); //生成XML数据文件 

对同步到Pocket PC的数据信息的保存,RDA必须依赖Microsotf SQL Server CE数据库,这 

就限制了RDA的使用局限。而XML是把数据信息以XML架构写入一个XML文件,不仅方便 

对信息的保存和移动,而且无需Microsoft SQL Server CE。 

对数据的显示,XML方式区别于RDA,可以直接读取XML数据文件,显示在Listview中: 

ds.ReadXml(@”\My Documents\a.xml” XmlReadMode.ReadSchema); 

DataTable xmlTable=ds.Tables[”UserTable”1; 

//读取xML文件 

foreach(DataRow rows in xmlTable.Rows) 

{listhem=new ListViewItemO; 

listltem.Subltems[0].Text=rows[”username”】.ToStringO; 

listItem.SubItems.Add(rows[”password”].ToString0); 

listView1.Items.Add(1isthem);1 ,/用Listview读取数据集列表显示数据 

对数据的修改,可以用SQL语句对XML的DataSet数据集进行修改,并以XML架构把更新 

的数据信息导人到新的XML数据文件中,通过上传到服务器,最终实现移动设备对服务器数据 

库的更新。 

L 

联机同步 

这样的联机同步类似于RDA,属于在Pocket PC上的“一键”同步方式。而“一键”式的优点在 

于操作步骤少,适合初级用户。用户无需经过大量的培训,只需在移动设备上,点一下按键即可 

完成PC服务器和Pocket PC的数据交换任务。在实际工程中,电力系统的巡视软件经常采用这 

种方式。但“一键”式同步缺点也显而易见,在于同步前准备工作过于繁琐,除了在服务器安装与 

移动设备的同步软件和搭建同步环境外,同步时也必须使用数据线通过网络连人服务器,一旦 

其中一个环节出错,同步将无法执行,这就增加了平时系统维护的工作量,也使得Pocket PC有 

了对同步地点的要求。 

2.2脱机同步 

脱机同步不同于联机同步,是在服务器端建立应用程序,保存XML数据文件的路径也在服 

务器上: 图2 Pocket PC仿真界面一 

Listview数据显示 

SqlConnection cnn=new SqlConnection(”server=X61;uid=sa;pwd=1 1;database=用户名;”) 

//SQL的连接串 

da.Fill(ds。”UserTable”);//在数据集中放人采集的数据 

ds.WriteXml『@”c:\a.xml”,XmlWriteMode.WriteSchema);//用采集来的数据生成XML数据文 

件 

对于在服务器C盘路径下生成的这个XML数据文件,可以用存储卡、红外、无线网、GPRS 

等任意方式拷人到Pocket PC中,然后在Pocket PC中对XML文件中数据的提取和修改。最终更 

新的XML数据文件再传回服务器中得以数据的更新同步。 

XML的脱机同步无需数据线,无需在服务器中搭建专门的联机环境,而且可以远程或无线 

方式对数据库的进行同步更新,其优点是突出的。 

3 XML对Microsoft Access的数据同步过程 

RDA只能与Microsoft SQL Sever数据库进行数据同步,r对Microsotf Access等数据库,RDA 

同步方式则无能为力。下面通过XML对Microsoft Access数据库进行脱机同步。 

3.1从PC到Pocket PC的数据下载过程 

首先在服务器端建立的这个Windows应用程序: 

01eDbConnection cn=new 0leDbConnection f@”Provider=Microsoft.Jet.OLEDB.4.0;Data 

图3 windows仿真界面一 

SQL脱机同步 

Source=CAACCESS.mdb”1; //ACCESS数据集的连接串 

da.Fill(ds,”项目表l”); //将采集到的数据写入数据集中 

//生成XML数据文件 ds.WriteXml(@”cab.xml”,XmlWriteMode.WriteSchema); 

生成的XML文件里就包含所需的Microsoft Access数据库的数据信息,把这个XML从PC 

服务器中通过中间存储介质导人到移动设备中,就实现了数据的下载。 

3.2从Pocket PC到PC的数据上传更新过程 

对数据的显示修改可在Listview上来进行,最终更新的数据保存到一个新的XML文件中。 

dsEx.ReadXml(@”c:\a.xml”,XmlReadMode.ReadSchema);//读取已经更新的名为a的xML数 

据文件 

图4 windows仿真界面一 

Access脱机同步 

本栏目责任编辑:代影 

OleDbConnection conn=new OleDbConnection(@”Provider=Microsoft.Jet.OLEDB.4.0;Data 

6826 数据库与信息管理 * * 

第7卷第28期(2011年10月) 

//对ACCESS数据库的链接串 

Computer Knowledlge and Technology电脑知识与技术 

Source=CAACCESS.mdb”); 

sda.Fill(dsEx.”项目表2”11: 

dsEx.Tables[1].Merge(dsEx.Tables[0]); //合并更新两个数据集 

sda.Update(dsEx,”项目表2”1: //更新表 

至此,用XML脱机同步方式对Microsoft Access数据库实现了上传更新。改变对PC服务器数据库的连接串,这种脱机同步的方 

式就可类似应用到其他类型的数据库。 

4总结 

XML易于建立和易于分析,它的简单使其易于在任何应用程序中读写数据,这也使得XML很快成为数据交换的公共语言。 

XML既是平台无关的,又是厂商无关,可以在不同的系统之间交换数据。XML传输方式具有多样性,可以很方便的进行XML文件 

的导入和导出。这些特点都使XML的使用效率和使用范围得以提升。 

相对于RDA,XML只是实现了数据库之间的数据交换,但无法达到将表结构同步复制的功能。此外,在数据处理时,由于要对 

XML进行解析和文本转换,数据量庞大的时候访问速度较慢,所以XML适合在数据量小、用户少和性能要求不太高的环境下来用 

作数据库,但是却不适用于用户量大、数据集成度高以及性能要求高的作业环境,这也是XML数据库同步的局限所在。 

参考文献: 

『11范盛荣.Windows Mobile应用程序开发实践[M].北京:科学出版社,2006:16—468. 

『2]刘彦博.Windows Mobile平台应用与开发『M1.北京:人民邮电出版社,2006:26—432. 

『3]弗雷德里克.智能手机WEB标准开发实战[M].北京:清华大学出版社,2010:58—185. 

『4]张大威.Microsoft Mobile移动应用开发宝典[M].北京:清华大学出版社,2008:156—158. 

『5]吴文国.XML入门经典[M].北京:清华大学出版社,2009:62—65. 

【6]王春楠.XML高级编程【M].北京:清华大学出版社,2009:14—15. 

『71沃森.C样入门经典[M].5版.北京:清华大学出版社,2010:11-695. 

【8】桂浩.XML开发技术教程【M】.武汉:武汉大学出版社,2008:8—89. 

『9】万常选.XML数据库技术fM】.2版.北京:清华大学出版社,2008:63—302. 

(上接第6812页) 

3.5数据挖掘在图书馆个性化服务中的应用前景 

作为图书馆的未来发展趋势,数字图书馆在研究中仍就面临着不少的困难和问题,知识的有效组织与发现就是其中重要课题之 

一 

数据挖掘作为一项逐渐发展的信息技术之一,由于其在数据组织、分析和知识发现等方面的巨大优势和对信息的深层挖掘能 

力,随着硬件环境和挖掘算法的改进、应用的普及和经验的积累等,数据挖掘在图书馆的发展中将显示出强大的发展潜力和广阔的 

应用前景。 

同时.不仅在个性化服务方面,数据挖掘在决策制定方面也有可发展的空间。根据对集成的各种数据的挖掘和分析,可以得出 

可靠的决策信息,在合理利用有限资源的基础上,优化各项资源的配置。同时,也可从历史数据中得到潜在的模型并在此基础上做 

出预测.为决策的确定提供提示或帮助。好的决策可以为优化资源、个性化服务信息甚至是检索和查新等工作提供更多合理、有效 

的信息。 

4结束语 

在信息技术飞速发展的当今社会,能否提供高质量的信息服务已经变得越来越重要。随着信息技术和数字图书馆事业的发展, 

数据挖掘在此过程中已经做出了一定的贡献。尽管数据挖掘技术在数字图书馆构建中的应用尚处于起步阶段,但由于其在数据组 

织、分析和知识发现及信息深层挖掘等方面体现出的强大优势,数据挖掘技术必将在数字图书馆建设中发挥关键性的作用。 

参考文献: 

『11周军.基于数据挖掘的数字图书馆个性化服务系统的构建[J].图书馆学研究,2007(3):15—17. 

[2】叶福兰,施忠兴.关联规则数据挖掘在图书馆个性化服务中的应用[J】.福建电脑,2009(5):99-103. 

『31 Dunham M H.数据挖掘教程[M].北京:清华大学出版社,2005. 

『41 Jiawei Han Micheline Kamber.数据挖掘概念与技术[M】.北京:机械工业出版社,2001. 

『5]李志明,胡树森.数据挖掘及其在现代化图书馆中的应用[J].图书馆学研究,2006(6). 

『61董云鹏.数据挖掘技术在图书馆中的应用『JJ.现代情报,2006(1 1):131—132. 

f71马丰宁.数据挖掘技术在公共图书馆中的应用[J】.图书馆工作与研究,2008(11):54-57. 

『81高巨山.数字图书馆构建中的数据挖掘应用研究[J].图书馆工作与研究,2009(4):20—21. 

本栏目责任编辑:代影 * 数据库与信息蕾曩 6827 

本文标签: 数据数据库图书馆数据挖掘应用