用VB开发数据库连接(一)
ADODC对象的主要事件
EndOfRecordset事件:当在结果集中移动记录指针时,当记录指针超 出了结果集的最后一条记录时,触发此事件。 Error事件:只有在没有执行任何VB代码而发生了一个数据访问错误时, 才会触发此事件。 WillChangeField事件和FieldChangeComplete事件:当对结果集中 的一个或多个字段值进行修改前,触发WillChangeField事件;当对结 果集中的一个或多个字段值修改之后,触发FieldChangeComplete事 件。 WillChangeRecord事件和RecordChangeComplete事件:当对结果 集中的一个或多个记录进行修改前,触发WillChangeRecord事件;当 对结果集中的一个或多个记录修改之后,触发 RecordChangeComplete事件。 WillMove事件和MoveComplete事件:在结果集的当前行记录指针移 动之前,触发WillMove事件;在结果集的当前行记录指针移动完成后, 触发MoveComplete事件。
ConnectionString属性设置步骤 使用ODBC数据资源名称 以建立ODBC数据源时使用 使用连接字符串 未建立ODBC数据源时使用
使用ODBC数据资源名称
使用连接字ቤተ መጻሕፍቲ ባይዱ串
RecordSource属性
此属性用于设置 ADO结果集的内 容,这个内容可 以来自于一张表, 也可以来自一个 查询语句,也可 以来自一个存储 过程的执行结果。 RecordSource属 性的值与 CommandType 属性的值有关, 两者协同使用。
RecordSet对象的主要方法
RecordSet对象的方法是实现结果集操作的关 键。 Move方法组 AddNew方法 Update方法 Delete方法 CancelUpdate方法
访问数据库的几种方式
使用数据访问接口(对象模型) ActiveX数据对象(ADO,ActiveX Data Objects ) 远程数据对象(RDO,Remote Data Objects ) 数据访问对象(DAO,Data Access Objects) 使用控件数据库表记录 此方法局限性强,处理数据量小。 直接调用ODBC API(应用程序编程接口) (Application Programming Interface)编程复杂。
Error Connection Property Parameter
Command
Property Field Recordset Property ADO对象模型 Property
ADO数据控件与数据绑定控件
ADO数据控件是使用ADO数据对象来快速 建立应用程序和数据源之间的连接,并快 速创建数据访问结果记录集的工具。 由于 ADO 数据控件不具有显示数据的功能, 因此要将数据操作结果在用户界面上显示 出来,就要靠数据绑定控件来实现。 ADO数据控件 数据绑定控件
RecordSet对象的主要属性
BOF:布尔值,如果结果集中记录的当前行指针移到了第一条记 录的前边,则此值为真,否则为假。 EOF:布尔值,如果结果集中记录的当前行指针移到了最后一条 记录的后边,则此值为真,否则为假。 RecordCount:存放结果集中的记录个数。 Sort:将结果集中的记录按某个字段排序。 AbsolutePosition:记录当前行记录在结果集中的顺序号,结果 集记录序号从1开始。 ActiveCommand:结果集中创建的命令。 ActiveConnection:结果集中创建的连接。 Bookmark:结果集中当前行记录的标识号。 Fields:结果集中的字段集合。由于一行记录可以包含多个字段, 因此Fields属性是一个数组形式,数组中的每个元素代表一个字 段。
ODBC驱动程序的具体任务
ODBC 应用程序不能直接存取数据库,它将所要执行的操作提 交给数据库驱动程序,通过驱动程序实现对数据库的各种操 作,数据库操作结果也通过驱动程序返回给应用程序。 ODBC
驱动程序的具体任务有:
建立与数据源的连接; 向数据源提交SQL请求; 处理查询结果; 将数据源错误转换为标准错误代码,返回给应用程序;
Fields对象属性
Fields属性本身也是一个对象,它直接指向ADO对 象模型中的Fields对象。Fields对象用下述属性来描 述结果集字段的信息:
:字段名称。 Fields.Value:字段的值。 Fields.OrdinalPosition:字段在Fields集合中的顺序。 Fields.Type:字段的数据类型。 Fields.Size:字段的最大字节数。 Fields.SourceTable:字段来自的表 Fields.SourceField:字段来自的表中的列
提交事务的开始请求、完成请求和撤消请求等。
什么是数据源
数据源是指任何一种可以通过ODBC连接的数据库管理系统,包括要访问
的数据库和数据库的运行平台(包括数据库管理系统和运行数据库管理 系统的服务器)。它可以是PC平台上的FoxPro数据库、Windows 平 台上的SQL Server数据库或OS/2平台的Oracle数据库等。 数据源名掩盖了数据库服务器之间的差别,通过定义多个数据源,让每
用户DSN只能用于当前 定义此数据源的机器上, 而且只有定义数据源的用 户才可以使用;系统DSN 可用于当前机器上的所有 用户;文件DSN是将用户 定义的数据源信息保存到 一个文件中,并可被所有 安装了相同驱动程序的不 同机器上的用户共享。
新建数据源
数据访问接口(ADO)
访问数据库的几种方式 一致的数据访问策略 ADO对象模型 ADO数据控件与数据绑定控件
个数据源名对应一个数据库管理系统中的指定数据库,这样就可以实现
在应用程序中通过数据源名而不是具体的数据库名访问指数据库的目的。
建立ODBC数据源
可以通过Windows的控制面板可以建立 ODBC数据源。 建立步骤为:
ODBC数据源共有三种 类型,第一种是用户数据 源(用户DSN),第二种 是系统数据源(系统 DSN),第三种是文件数 据源(文件DSN)。
RecordSet对象的主要属性和方法
Recordset属性也称为记录集或结果集,用于存放从数 据提供者那里获得的查询结果,这个结果一般存放在客 户端内存中,可以理解为是客户端的游标。 每个结果集有一个当前行指针,指向正在操作的记录。
在VB数据库应用程序中,一般不直接对数据库中的数据 进行操作,而是通过记录集进行的。因此,记录集是VB 应用程序和数据库之间相互连接的桥梁。 对数据库中数据的操作主要是通过RecordSet对象完成 的。
ADODC对象的主要属性、方法和事件
ADODC对象的主要属性 ADODC对象的主要方法
ADODC对象的主要事件
ADODC对象的主要属性
ConnectionString属性 (用于连接数据源) Command属性
RecordSource属性 CommandType属性
Recordset属性
前端应用程序
ADO OLE DB
提供者 ODBC
提供者
提供者
提供者
提供者
关系数据 库
VSAM/ ISAM
文件 系统
E-mail消 息
目录 服务
一致的数据访问策略的体系结构
ADO对象模型
ADO是面向对象的API,它只需开发者掌握几个 简单对象的方法和属性。 ADO对象模型中包含了三核心对象:Connection、 Command和Recordset。 开发人员可以创建这三个对象并使用这些对象访 问数据库。 在ADO对象模型中还有几个其他对象:Field、 Property、Error和Parameter,它们是前面三个 对象的子对象。这些对象的描述如下:
ODBC的构成
应用程序 驱动程序管理器 驱动程序
数据源
VB应用程序
驱动程序管理器
数据源1
数据源2
数据源3
数据源4
驱动程序管理器的工作
驱动程序管理器是 Windows 下的应用程序,其主
要作用是:
安装指定的驱动程序;
定义数据源,并把数据源映射到具体的ODBC驱
动程序上 ; 为每个驱动程序提供ODBC函数的入口点; 检查ODBC参数的合法性等。
ADO数据控件
在VB的工具箱中添加ADO数据控件 ADODC对象的主要属性、方法和事件 RecordSet对象的主要属性和方法
RecordSet对象的主要属性 Fields对象属性 RecordSet对象的主要方法
在VB的工具箱中添加ADO数据控件
ADODC在窗体中的样式
ADO数据控件(ADODC)
C/S——VB数据库应用系统开发
数据库应用系统结构 Visual Basic快速入门 开放数据库连接(ODBC) 数据访问接口(ADO) VB数据库编程举例 VB开发数据库应用系统实例分析
开放数据库连接(ODBC)
ODBC概念 ODBC的构成 建立ODBC数据源
ODBC概念
ODBC(开放数据库接连,Open DataBase Connectivity)是Microsoft公司开发的一套开放 的数据库系统应用程序接口标准。 ODBC使得客户端应用不再紧密地依赖于数据库 管理系统,用户有广泛的挑选余地来选择自己喜 欢和熟悉的开发工具。 ODBC使数据库应用程序具有很好的适应性和可 移植性,并且具备同时访问多种数据库管理系统 的能力。
设置CommandType属性的方法参见设置 RecordSource部分。
CommandType属性设置步骤
Recordset属性
Recordset属性是ADO数据控件中实现数 据记录操作的最重要的属性 这个属性本身又是一个对象,也有自己的 属性和方法,它直接指向ADO对象模型中 的Recordset对象。 稍后介绍该对象