SQL CE与SQL Server数据交换

     背景:客户资产管理项目分为桌面应用程序和PDA手持式应用程序,手持式应用程序读取资产上的电子标签的信息,并保存在本地的SQL Server CE中,但为了进行统计报表和相关的审核查询,需要把SQL Server CE中的数据同步到桌面数据库SQL Server 2000中去,也就是说SQL Server CE需要和桌面的SQL Server 2000 进行数据交换。

     技术要点:SQL Server CE全名是Microsoft  SQL Server 2000 Window CE Edition,它为移动智能设备和嵌入式设备提供了一种存取轻量级数据库的方案。通过Microsoft  Visual Studio.Net或者Microsoft embedded Visual Tools开发工具,我们可以将SQL Server的企业数据管理能力扩展到基于Window CE的智能平台之上。SQL Server CE可以应用到三中典型的环境中。

1、开发环境,即用于开发基于SQL Server CE程序的桌面PC,改桌面PC必须包括Microsoft Visual Studio.Net或者Microsoft embedded Visual Tools和Pocket PC SDK开发工具。

2、客户端环境,是用于运行基于SQL Server CE程序的Pocket PC设备,当设备没有可用的网络连接时,可以使用Microsoft ActiveSync来与服务器环境桌面PC进行线缆连接。

3、服务器环境,是运行Microsoft Internet Information服务(IIS)和Microsoft SQL Server实例的计算机,可以讲IIS和SQL Server部署在同一台计算机上,也可以配置到多台计算机上。RDA和合并复制都需要通过IIS来与SQL Server进行通信。


SQL Server CE 依靠几个组件来与SQL Server进行数据交换:
1、数据库引擎用于管理基于Windows CE设备上的数据存储,并且跟踪数据库记录的添加、更新和删除操作;
2、SQL Server CE Client Agent 是运行在Windows CE设备上的用于连接的组件,包括复制对象、RDA对象和数据库引擎,使用这些对象应用程序可以控制与SQL Server的连接;
3、SQL Server CE Server Agent 处理来自SQL Server CE Client Agent的Http请求。当SQL Server CE Client Agent通过Http协议向SQL Server CE Server Agent发送请求时,SQL Server CE Server Agent会与SQL Server进行连接并将查询的记录集通过Http协议再传回给SQL Server CE Client Agent,所有数据的传送都要依赖IIS来完成。
由上述通信过程我们知道,SQL Server CE 的远程连接和存取需要使用Web传输协议Http 或者Https,SQL Server CE Client Agent必须运行在Windows CE设备上,SQL Server CE Server Agent则运行在桌面PC上,而且该计算机还必须安装有IIS以便使用RDA 或合并复制来和SQL Server通信。SQL Server CE 支持的网络连接有以太网、无线局域网和无线广域网。通过使用Microsoft ActiveSync,Pocket PC设备可以使用串口、红外线或者USB直接与桌面PC上的SQL Server连接,也可以进行SQL Server CE与桌面SQL Server 的连接测试。
Remote Data Access (RDA)对象是Microsoft SQL Server 2000 Windows CE (SQL Server CE)用于可编程存取远程Microsoft SQL Server 2000 或者Microsoft SQL Server version 7.0 数据库的ActiveX控件,我们可以使用RDA存取远程数据库就像是在桌面PC上操作本地数据库一样简单。

更多实例请参考:http://www.winbile.net/cms/News/Newsc7c60i8336.aspx

http://www.cnblogs.com/pingkeke/archive/2006/07/12/449154.html

原文地址:https://www.cnblogs.com/Charles2008/p/1592594.html