RDA实现SQL CE与SQL Server间数据存取

本文介绍如何利用 RDA(RemoteDataAccess远程数据存取)实现掌上电脑Pocket PC(简称PPC)上的SQL Server CE 2.0与桌面SQL Server 2000数据库间的数据存取。我们将采用Visual Basic .Net 2003进行智能设备端的程序开发。

一、 概述

PPC程序与桌面PC进行通信的编程方式目前有两种,1、利用Socket编程与桌面程序进行通信;2、利用RDA和Replication(复制)进行数据库编程来完成与桌面SQL Server数据库的存取。利用Socket编程实际上就是通过TCP/IP协议与桌面PC进行通信,它可以很方便的传输一般类型的数据,譬如:字符串、整数以及字节等,但是如果需要传输类型化的数据则需要程序员自己去封装,而且若想由智能设备从桌面数据库引擎中返回指定数据库表的数据,必须编写桌面接口服务程序来查询数据并将结果通过Socket返回给智能设备。那么如何才能在Pocket PC上做到像在桌面PC上一样存取本地数据库甚至是远程桌面PC的数据库呢?通过在智能设备Pocket PC上运行的SQL Server CE 我们便可以轻松存取放置在Pocket PC上的SQL Server CE数据库,还可以通过SQL Server CE中的RDA或者合并复制快速实现从智能设备上存取远程桌面SQL Server2000的数据库。

二、技术要点

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

1、开发环境,即用于开发基于SQL Server CE程序的桌面PC,该桌面PC必须包括Microsoft Visual Studio .NET或者Microsoft eMbedded Visual Tools 3.0和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上操作本地数据库一样简单。

时间: 2024-09-17 03:29:13

RDA实现SQL CE与SQL Server间数据存取的相关文章

利用RDA实现SQL CE与桌面SQL Server数据库间的数据存取

本文介绍如何利用RDA(RemoteDataAccess远程数据存取)实现掌上电脑Pocket PC(简称PPC)上的SQL Server CE 2.0与桌面SQL Server 2000数据库间的数据存取.我们将采用Visual Basic .Net 2003进行智能设备端的程序开发. 概述 PPC程序与桌面PC进行通信的编程方式目前有两种,1.利用Socket编程与桌面程序进行通信:2.利用RDA和Replication(复制)进行数据库编程来完成与桌面SQL Server数据库的存取.利用

初探MS SQL CE+Codesmith

原来的程序是使用sqlite这个嵌入式数据库作为Remit(code name)的数据源的,因为NHibernate支持这 个,然而有一点不好的是sqlite不支持外键,导致可悲的codesmith不能得到关系,无法生成我喜欢的多对多 映射.如果手写就要写映射xml文件以及业务实体类,这可是我这种懒人不喜欢的.况且数据库经常变更,良 好的代码生成可以做到数据库与代码的同步. 硬盘坏了也是一种契机,我突然想到了Sql Server还有一个CE版本,现在不止提供For Mobile的,还提供 桌面版

利用typeperf工具收集SQL Server性能数据

通常DBA在监控和优化SQL Server数据库DBA,都想利用命令行工具.其中经常要做的一件事情,就是收集服务器性能数据,包括CPU ,内存和磁盘利用率以及SQL Server特定数据.这时你就可以利用TypePerf.exe这个命令行工具来帮你捕获这些性能数据. TypePerf.exe是一个命令行工具,包括把Windows操作系统的性能计数器数据输出到命令窗口或写入到支持该功能的日志文件格式中. Windows操作系统以对象及其相关联的计数器的形式,提供了非常多的性能数据.例如, SQL

.NET Campact Framework下SQL CE兼容性问题

在.NET Campact Framework常用SQL CE数据库进行数据存储,SQL CE是一个扩 展名为*.sdf的文件数据库,曾经命名为SQL Server for Windows CE和SQL Server Mobile Edition,最新版本命名为SQL Server Compact Edition,在文章 中统一叫SQL CE.本文主要讲述SQL CE 3.0和SQL CE 3.5的兼容性问题. .NET Campact Framework下开发SQL CE统一使用 System

.NET Compact Framework下SQL CE的使用

在Wince和Windows Mobile下最常用的数据库为SQL CE,SQL CE也曾经叫做SQL Server for Windows CE和SQL Server Mobile Edition,最新版本命名为SQL Server Compact 3.5 SP1. SQL Server Compact不仅仅能运 行于Wince和Windows Mobile,而且能运行于Windows的PC上,是Access的有效替代品,如果不使用存储 过程,在SQL Server Compact下开发的程序

BCP导出导入 SQL SERVER 大容量数据实践教程

本教程我们介绍大容量数据导出导入的利器--BCP实用工具.同时在后面也介绍BULK INSERT导入大容量数据,以及BCP结合BULK INSERT做数据接口的实践(在SQL2008R2上实践).  1. BCP的用法 BCP 实用工具可以在 Microsoft SQL Server 实例和用户指定格式的数据文件间大容量复制数据.使用 BCP实用工具可以将大量新行导入 SQL Server 表,或将表数据导入数据文件.除非与 queryout 选项一起使用,否则使用该实用工具不需要了解 Tran

SQL Server入门教程(1):SQL简介和SQL语法

SQL 是用于访问和处理数据库的标准的计算机语言. 什么是 SQL? SQL 指结构化查询语言 SQL 使我们有能力访问数据库 SQL 是一种 ANSI 的标准计算机语言 编者注:ANSI,美国国家标准化组织 SQL 能做什么? SQL 面向数据库执行查询 SQL 可从数据库取回数据 SQL 可在数据库中插入新的纪录 SQL 可更新数据库中的数据 SQL 可从数据库删除记录 SQL 可创建新数据库 SQL 可在数据库中创建新表 SQL 可在数据库中创建存储过程 SQL 可在数据库中创建视图 SQ

用ASP实现从SQL Server导出数据到Access

access|server|导出数据 方法其实很简单:需要在SQL Server连接中嵌套一个access连接,然后逐条  写入就可以了.   <%set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "driver={SQL server};server=mamaco;uid=linner;pwd=123;dat abase=linner" sql="select * from s

Asp.Net(C#)+Sql Server三层架构下数据存取方案(一)

asp.net|server|架构|数据 引言: 参与了一个大型社区程序的开发,现在将相关开发经验陆续总结出来,和大家探讨一下.本节主要想与大家探讨一种数据读取方案:集合类代替直接从数据库中获取的DataSet,主要好处就是可以解决Sql Server吞吐量的瓶颈问题.一般小数量的程序不会有问题,但数据以十万百万条计的时候,数据库的吞吐量的限制就会表现的比较明显.这里的解决方案其实也就是把海量数据信息分成一条条取出,以频繁取库的代价解决瓶颈限制,其实也就是把数据库服务器的负担让WEB服务器分担了