摘要:以安全督察通报系统开发为例,详细介绍怎么利用VS2005和SQL Server Mobile开发基于移动设备的系统。
关键词:VS2005;C#;PDA;SQL Server Mobile;移动设备;系统
1.引言 目前安全督察通报系统是基于网络平台B/S模式的系统,安全督察小组可以通过网络对检查的问题进行提交;各单位登陆后,可以查看督察小组发现的问题,并进行相应的整改,提交整改意见;对应的集团业务处室也可以在网页上进行查询,整个督察过程可以始终处于一个可控的状态。但是,督察小组对出现问题的单位进行复检的时候,工作不方便,往往要通过打印检查单位近一两个月的问题记录,然后一个一个对照,工作效率低,对于移动办公及其不利。 通过移动设备,比如智能手机、PDA(Personal Digital Assistant,即个人数字助理。一般叫做掌上电脑),对督察系统进行移植,督察小组对各单位进行复检的时候,只要带上一个移动设备,虽然把问题调出来,查看落实,可以极大的提高工作效率。
2、系统实现
2、1开发工具和数据库 系统采用Microsoft Visual Studio .NET2005和Microsoft SQL Server 2005 Mobile Edition (SQL Server Mobile)数据库, SQL Server Mobile 以很小的内存开销提供了所需的关系数据库功能:可靠的数据存储、优化查询处理器,以及可靠、可伸缩的连接功能。 SQL Server Mobile 通常用作完整 Microsoft .NET Compact Framework 应用程序部署的一部分,但也可以单独安装在智能设备上。远程数据访问 (RDA) 与合并复制确保可以将来自 SQL Server 数据库的数据传递到支持的设备上的 SQL Server Mobile。可以脱机操作这些数据,并在以后将其同步到服务器。 SQL Server Mobile 和 Microsoft .NET Compact Framework 通过使用 Microsoft Visual Studio .NET 集成在一起。这样可以简化支持的设备的数据库应用程序开发。通过使用 SQL Server Mobile 数据访问接口来管理公共语言运行时代码,移动软件开发人员可以利用断开连接方案的脱机数据管理能力来生成高度可扩展的应用程序。
2、2 系统结构和功能
2.1.1客户端与服务器环境

2.1.2SQL Server Mobile 运行环境

2.1.3系统功能
n 远程访问数据和数据同步
n 业务查询分析
2、3 远程数据访问(RDA)和和数据同步的实现
2.3.1体系结构
远程数据访问 (RDA) 使用 Microsoft SQL Server 2005 Mobile Edition (SQL Server Mobile) 的三个组件:SQL Server Mobile 数据库引擎、SQL Server Mobile 客户端代理和 SQL Server Mobile 服务器代理。
RDA 使用 Microsoft Internet 信息服务 (IIS) 作为服务器上 SQL Server 数据库和设备上 SQL Server Mobile 数据库之间的通信机制。SQL Server Mobile 数据库引擎、SQL Server Mobile 客户端代理和 SQL Server Mobile 服务器代理协同工作才可以完成 RDA,如下面的关系图所示。

2.3.2 编程实现
2.3.2.1 初始化 SqlCeRemoteDataAccess 对象,并设置连接的属性。
dbfile = string.Format(@"{0}\problem.sdf", Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase));
string connStr = string.Format(@"Data Source = {0}", dbfile);
string sqlAgent = "http://ms-5e28bf31c356/safe_data_pda/sqlcesa30.dll";
string rdaOleDbConnStr = "Provider=sqloledb;Data Source=ms-5e28bf31c356;Initial Catalog=Security_clean_up;" +"User Id=sa;Password=chenamo;";
SqlCeRemoteDataAccess rda = new SqlCeRemoteDataAccess(sqlAgent, connStr);
2.3.2.2调用 Pull 方法,传入要从中请求数据的 SQL Server 表的名称、要使用的 SELECT 语句以及指向本地 SQL Server Mobile 数据库的连接字符串。您还可以指定要使用的跟踪选项和用于记录远程数据访问 (RDA) 错误的错误表的位置。
rda.Pull( "problem",
"Select * From problem where updatestr>= '" + startdatestr + "' and updatestr<='" + stopdatestr + "' and spec like '%" + spec + "%'",
rdaOleDbConnStr,
RdaTrackOption.TrackingOnWithIndexes,
"errProblemTable");
3、系统实现效果

4、结束语
基于移动设备的安全督察系统较好的解决了由于移动办公的问题,对于类似的业务也可以采用这种方式进行信息化建设,提高工作效率。
发表于 @ 2008年05月07日 01:34:00|评论(loading...)|编辑