【VB开源代码栏目提醒】:网学会员鉴于大家对VB开源代码十分关注,论文会员在此为大家搜集整理了“如何使用Remote Data Object - 生活指南”一文,供大家参考学习
如何使用Remote Data Object信息技术 张静敏 约4265字 摘要:本篇
论文主要讨论Visual Basic程序如何简单通过使用Remote Data Object远程数据对象RDO访问放在多种多样的远程数据库中的数据。
在Visual Basic中增加的RDO是如何减少处理远程数据的应用程序所需的编写
工作。
关键词:ODBCRDODAORDC 一、数据库访问原理 在PC数据库世界 信息是通过本是应用程序的一部分的数据库引擎来访问的。
对Visual Basic而言Jet引擎是数据库应用程序的一部分。
当用命令从数据库中提取信息时命令的处理过程是在用户的PC机上进行。
不管数据库文件是在PC机上长期驻存还是位于一个文件服务器上数据库引擎都保存在PC机上。
应用程序本身包含直接访问数据库文件的逻辑。
在客户/服务器数据库世界中就不是这样了。
应用程序发出一个要访问信息的请求通常采用SQL语句的方式。
这个请求传递到处理请求并返回结果的数据库服务器上。
这就是客户/服务器的计算过程在这个过程中一个数据库服务器实际上进行处理请求的过程。
客户/服务器系统仅在共享数据库文件方面就有许多优点。
首先数据库逻辑移到一个集中的、更易维护的位置上。
例如在网络试题库系统中教师要修改某一道题在一个客户/服务器环境中这个修改过程的逻辑将位于数据库服务器上。
这意味着教师可以在某一处进行修改而不必重新编写客户应用程序。
另一个优点是能从商业逻辑的角度上分派处理过程分别
设计用户界面。
二、操作ODBC 用Visual Basic与客户/服务器数据库通讯的一种方法是开放式数据库连接Open Database ConnectivityODBC。
ODBC是Microsoft Windows Open System Architecture即WOSA的一个组件。
ODBC提供了一系列使开发者很容易连接较宽范围的数据库格式的应用程序界面application Program interfaceAPI函数由于使用了ODBC标准尽管实际的数据存储系统区别相当大用户也可以使用相同系列的函数和命令去访问在一个SQL服务器。
Orace或Interbase服务器上的信息。
甚至可以用ODBC函数访问许多PC数据库。
一建立一个ODBC数据源 要在
系统中建立ODBC数据源需要使用Windows ODBC数据源管理器。
用户将发现它在“控制面板”中可以通过选择“开始”菜单中的“设置”子菜单中的“控制面板”选项来访问它。
当打开ODBC管理器时可以看到ODBC Data Source AdministratorODBC数据源管理器对话框。
数据源管理器包含几种用来增加数据源和新ODBC驱动程序的标签。
对话框中前三个标签的标题以字符DSN结束。
DNS是Data Source Name数据源名的缩写。
它是程序用来标识一个ODBC数据源的关键。
ODBC将DSN仔细地传递到实际驱动器、服务器和数据库文件上。
ODBC数据源可分为三种类型用户、系统和文件。
尽管所有DSN的目的——提供一种特定数据源的信息——都几乎一致在何处和何时能使用每种类型还是有区别的 系统DNS在Windows NT中比在Windows 95/98中更实用它与某种特殊的用户文件界面没有关联。
这意味着在安装DNS后所有在机器上运行的程序和服务程序都可以访问它。
例如如果要用Internet信息服务器链接一个数据库就可以为数据库建立一个系统DNS。
文件DNS在一个文本文件中存储DNS信息。
这个文本文件是一个包含有关数据库驱动程序和地址的信息的INI文件。
它不与某台特定的机器相连所以它可以在一个
网络驱动器上使用。
用户DNS是最常用的类型。
用户DNS信息存储在当地机器的
注册信息中。
在Windows NT中每个用户DNS与一个特定的用户界面相连并且在用户DNS外看不见。
最后一个选项卡是About选项卡非常类似于ODBC Driver选项卡。
它列出了ODBC自身使用的版本和文件。
找到这两个屏幕有助于确定用户是否安装了正确的驱动程序。
在继续移动之前注意Tracing选项卡。
这个选项卡能跟踪由ODBC管理器对ODBC驱动程序的每次调用。
ODBC是一种链接许多数据库和一些
常用API函数的方式。
Tracing选项能查看这些API的调用。
这个过程可能用得不多但是它对了解信息是很有用的。
二用ODBC管理器创建一个ODBC源 要在应用程序中建立一个数据源需要知道要使用哪个驱动
程序以及如何设置。
例如需要知道存储数据的SQL服务器名或 AccessMDB文件名。
还需要使用唯一的名字标识这个数据源。
现在建立一个实例数据源。
进入User DSN屏幕单击Add按钮以创建一个新数据源。
这将显示Create New Data Source创建新数据源对话框。
在第一个对话框中选择要用来访问数据的ODBC驱动程序。
在选择了驱动程序并单击OK按钮后将显示与驱动程序相关的特定数据库类型的Setup 设置对话框。
选择Microsoft Access Driver选项单击Finish按钮。
在弹出的对话框中要在Data Source Name文本框中输入一个名字。
这就是将在应用程序中用来指定数据源的名字。
也可以选择包含对数据源的描述Description。
在输入名字后需要选择要在应用程序中使用的实际数据库文件或服务器。
对于Access 驱动程序来说在对话框中单击Select按钮就可以完成。
接下来显示Select Database选择数据库对话框它是最基本打开文件对话框。
选择PC机上的一个MDB文件试试。
对话框是依赖于驱动程序的。
然而在任何情况下可以指定一个数据源名和数据的位置。
DNS屏幕还能设置或删除ODBC数据源。
要修改一个数据源选择这个数据源再单击Configure按钮。
这将显示与最初用来建立数据源相同的对话框。
要删除一个数据源选择它并单击Remote按钮。
三使用DAO创建一个ODBC数据源 在交互建立数据源中用户不受限制。
在很多时候例如应用程序的安装时用户可能想用
代码增加一个数据源。
此时可以使用DBEngine对象的RegistDatabase方法。
下面的
代码实例说明了RegistDatabase方法是如何用来创建与Access数据库的链接的。
Dim sAttrib As String Dim sDriver As String sAttrib”DBQD:
VB5BIBILIO.mdb” sDrive”Microsoft Access Driver.mdb” DBEngine.RegisterDatabase “MyDSN”sDriverTruesAttrib 在运行了前面的
代码后可以返回到Data Source Administrator窗口并确认已以增加了一个新User DSN。
三、远程数据对象 一用RDO访问数据库 程序1和程序2中的
代码运行了BIBLIO数据库中相同的功能。
两个程序段的不同之处仅在于用来创建返回记录的对象和方法。
在Recordset和Resultset建立后剩余语句仅打印出第一个记录中的每个条目。
在RDO实例中ODBC数据源MyDSN是以前用ODBC管理创建的。
用RDO方法访问一个ODBC数据库中的信息 程序1 Dim As rdoConnection Dim As rdoResultset Dim As String Set dbrdoEngine.rdoEnvironments0.OpenConnection“MyDSN sSQL”Select From Titles” Set rsdb.OpenResultsetsSQL.rdOpenKeyset Rs.MoveFirst While Not.rs.EOF Print.rs.rdoColumns0 Rs.MoveNext Wend Rs.Close Db.Close 用DAO方法访问相同的信息 程序2 Dim db As Database Dim rs As Recordset Dim sSQL As String Set dbDBEngine.Workspaces0.OpenDatabase“D:VBBIBLIO.MDB” sSQL”Select From Titles” Set rsdb.OpenRecordsetsSQL.dbOpenDynase rs.MoveFirst While Not rs.EOF Print rs.Fields0 rs.MoveNext Wend rs.Close db.Close 如果想用RAO研究的另一件事是数据库操作的异步执行。
这意味着在数据库操作完成之前控制将返回到程序中去如下面的实例 Set dbrdoEngine.rdoEnvironments0.ic.ccc OpenConnection“MyDSN” rdAsyncEnable While db.StillConnectingTrue Print”Connecting??” Wend 常数rdAsyncEnable表示异步操作。
While循环一直运行直到链接完成。
StillConnecting属性或为False为止。
四、使用远程数据控件 如果想用ODBC数据源较快地创建应用程序可以使用远程数据控件RDC。
RDC能设置控件的几个属性接着RDC处理所有与ODBC数据源相链接的任务。
用这种方式RDC以与数据控件自动运行数据访问对象的方法相同的方式自动运行远程数据对象的方法。
在建立远程数据控件后可以使用绑定控件显示和编辑同数据控件创建的结果集的信息。
除了绑定控件的DataSource属性应指的是一个远程数据控件之外绑定控件以与建立数据控件以同样的方式建立。
在它们建立后每次远程数据控件访问一个新行时绑定控件都用新信息更新。
一RDC和数据控件的比较 远程数据控件属性与数据控件属性的比较如表一。
图片 二建立RDC 在程序中建立RDC与建立数据控件是非常类似的。
在使用RDC之前必须首先在工程中增加它。
可以使用Components对话框作到这一点。
可以从Project菜单中的Components选项访问Components对话框。
在关闭了这个对话框后远程数据控件加入到工具箱。
要建立远程数据控件按如下步骤进行 1、在窗体中画出远程数据控件。
2、将RDC的Name和Caption属性设置为有意义的值。
3、设置 DataSourceName属性。
可以输入一个值或从下拉列表中选择一个值。
4、将SQL属性设置为一个指定需要的信息的有效SQL语句。
当设置了远程数据控件后接着可以通过设置DataSources属性交绑定控件附着其上。
在DataSource属性的下拉
列表中包含了当前窗体中的任何远程数据控件名或数据控件名。
在DataSource属性设置后可以从一个列表中选择DataField属性就象将控件绑到一个数据控件上所作的那样。
参考文献 Brian Siler JeffSpottsVisual Basic 6开发使用手册