您现在的位置:首页 >> 网络教学 >> 数据库应用 >> 内容

ADO控件

时间:2009-6-19 10:08:22 点击:7460

ADO控件

VB 中要开发数据库程序,可以使用“数据库访问对象”。随着Visual Basic 的发展,在VB6.0 中共有3种可以使用的数据库访问对象:

ADO(ActiveX Data Object) ActiveX数据对象

RDO (Remote Data Objects) 远程数据对象

DAO (Data Access Objects) 数据访问对象

其中ADOActiveX Data Objects)数据访问接口是Microsoft处理数据库信息的最新技术。它是一种ActiveX对象,采用了被称为OLE DB的数据访问模式,是数据访问对象DAO、远程数据对象RDO和开放数据库互连ODBC三种方式的扩展。其主要优点是易于使用、高速度、低内存支出和占用磁盘空间较少。ADO 支持用于建立基于客户端/服务器和Web的应用程序的主要功能。ADO对象模型(如图9-15所示)定义了一个可编程的分层对象集合,主要由三个对象成员Connection(连接)、Command(命令)和RecordSet(记录集)对象,以及几个集合对象Errors(错误)、Parameters(参数)和Fields(字段)等所组成。

9-15  ADO对象模型

要想在程序中使用ADO对象,必须先为当前工程引用ADO的对象库。引用方式是执行工程菜单的引用命令,启动引用对话框,在清单中选取“Microsoft ActiveX Data object 2.0 Library”选项。

1. ADO 主要对象 

1Connection对象:

通过“连接Connection对象”可以使应用程序与要访问的数据源之间建立起通道,连接是交换数据所必需的环境。对象模型使用Connection对象使连接要领具体化,用于通过OLE DB建立对数据源的链接,一个Connection对象负责数据库管理系统的一条链接。

2 Command对象:

Command对象通过已建立的连接发出访问数据源“命令”,以某种方式来操作数据源数据。一般情况下,“命令”可以在数据源中添加、删除或更新数据,或者在表中以行的格式检索数据。对象模型用Command对象来体现命令概念。使用Command对象可使ADO优化命令的执行。

3RecordSet对象:

如果命令是在表中按信息行返回数据的查询结果(按行返回查询),则这些行将会存储在本地RecordSet对象中。通过记录集RecordSet可实现对数据库的修改操作。  RecordSet对象用于从数据源获取数据。在获取数据集之后,RecordSet对象能用于导航、编辑、增加及删除其记录。RecordSet对象的指针经常指向数据集当前的单条记录。

2. ADO 辅助对象 

1Errors对象:

Errors对象集包含零个或多个Error对象。Error对象包含发生在现有Connection对象上的最新错误信息。ADO对象的任何操作都可能产生一个或多错误,且错误随时可在应用程序中发生,通常是由于无法建立连接、执行命令或对某些状态(例如,试图使用没有初始化的记录集)的对象进行操作。对象模型以Error对象体现错误。当错误发生时,一个或多个的Error对象被放入Connection对象的Errors对象集。

2Parameters对象:

通常,命令需要的变量部分(即“参数”)可以在命令发布之前进行更改。例如,可重复发出相同的数据检索命令,但每一次均可更改指定的检索信息。参数对于函数活动相同的可执行命令非常有用,这样就可知道命令是做什么的,但不必知道它如何工作。

例如,可发出一项银行过户命令,从一方借出贷款给另一方。可将要过户的款额设计为参数。用Parameter对象来体现参数概念。Parameters对象集包含零个或多个Parameter对象。Parameter对象表示与参数化查询或存储过程的参数和返回值相关的参数。某些OLE DB 提供者不支持参数化查询和存储过程,就不会产生Parameter对象。

3)字段对象(Field)

一个记录行包含一个或多个“字段”,每一字段(列)都分别有名称、数据类型和值,正是在这些字段值中包含了来自数据源的真实数据。对象模型以Field对象体现字段。

利用ADO可以方便地访问数据库,其一般步骤是:

l        建立连接:连接到数据源;

l        创建命令:指定访问数据源的命令,同时可带变量参数或优化执行;

l        执行命令(SQL 语句)

l        操作数据:如果这个命令使数数据按表中行的形式返回记录集合,则将这些行存储在易于检查、操作或更改的缓存中;

l        更新数据:适当情况下,可使用缓存行的内容来更新数据源的数据;

l        结束操作:断开连接。

以上ADO访问数据库技术虽然灵活、方便,但不能以可视化方式实现,为此VB提供一个称为ADO的数据控件来实现以ADO方式访问数据库。

3.使用ADO数据控件

在使用ADO据控件前,必须先通过“工程/部件”菜单命令选择“Microsoft ADO Data control6.0(0LE DB)”选项,将ADO数据控件添加到工具箱。ADO数据控件与Visual Basic的内部数据控件很相似,它允许使用ADO数据控件的基本属性快速地创建与数据库的连接。

1ADO数据控件的基本属性

1ConnectionString属性

ADO控件没有DatabaseName属性,它使用ConnectionString属性与数据库建立连接。该属性包含了用于与数据源建立连接的相关信息,ConnectionString属性带有4个参数,如表9-7所示。

9-7  ConnectionString属性参数

参数

描述

Provide

指定连接提供者的名称

FileName

指定数据源所对应的文件名

RemoteProvide

在远程数据服务器打开一个客户端时所用的数据源名称

Remote Server

在远程数据服务器打开一个主机端时所用的数据源名称

2RecordSource属性

RecordSource确定具体可访问的数据,这些数据构成记录集对象RecordSet。该属性值可以是数据库中的单个表名,一个存储查询,也可以是使用SQL查询语言的一个查询字符串。

3ConnectionTimeout属性

用于数据连接的超时设置,若在指定时间内连接不成功显示超时信息。

4MaxRecords属性

定义从一个查询中最多能返回的记录数。

2ADO数据控件的方法和事件

ADO数据控件的主要方法和事件与Data控件的方法和事件一样 。

3ADO数据控件连接数据库的一般过程

1)先在窗体上放置一个ADO数据控件;

2)在ADO属性窗口中单击ConnectionString属性右边的“…”按钮,从对话框中选择连接数据源的方式:

l        使用连接字符串:单击“生成”按钮,通过选项设置系统自动产生连接字符串。

l        使用Data Link文件:通过一个连接文件来完成。

l        使用ODBC数据资源名称:在下拉列表中选择某个创建好的数据源名称作为数据来源(DSN)对远程数据库进行控制。

3)ADO属性窗口中单击RecordSource属性右边的“…”按钮,在“命令类型”中选择“2-adCmdTable”,在“表或存储过程名称”中选择所需要的表。 

以上2)、3)可以合并成一步:在ADO控件上单击右键,从快捷菜单中选择ADODC属性,直接在属性页对话框中进行所有设置。

4)新增ADO绑定控件

随着ADO对象模型的引入,VB除了保留以往的一些绑定控件外,还提供了一些新的成员(如表9-8所示)来连接不同数据类型的数据。引用这些新成员,可在VB的“工程”菜单“部件”命令中添加。

9-8 新增ADO绑定控件

控件名称

部件名称

常用属性

DataGrid

Microsoft DataGrid Control 6.0OLE DB

DataSource

DataCombo

Microsoft DataList Controls 6.0OLE DB

DataFieldDataSourceListFieldRowSourceBoundColumn

DataList

MSChart

Microsoft Chart Control 6.0OLE DB

DataSource

作者:Admin  
  • 上一篇:记录集对象
  • 下一篇:数据报表设计
  • 相关文章
    • 没有相关文章
  • VB程序设计学习网站(赣南师范学院) © 2008 版权所有 All Rights Reserved.
  • 地址:江西省赣州市经济技术开发区 赣南师范学院数学与计算机科学学院 邮政编码:341000
    Email:ZQ188@163.com 技术支持QQ:87319633 移ICP备10086号
  • GnsySjxy! V2.4