




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库第10章-VBA数据库编程第第10章章 VBA数据库编程数据库编程数据库引擎VBA通过数据库引擎工具支持对数据库的访通过数据库引擎工具支持对数据库的访问。数据库引擎实际上是一组动态链接库问。数据库引擎实际上是一组动态链接库(Dynamic Link Library,DLL),它),它以一种通用接口方式,使用户可以用统一的以一种通用接口方式,使用户可以用统一的形式对各类物理数据库进行操作。形式对各类物理数据库进行操作。目前,目前,Access 202X和和 Access 20XX均均使用使用ACE引擎。引擎。VBA程序通过动态链接库实现对数据库的访程序通过动态链接库实现对数据库的访问功能。
2、问功能。Access 20XX数据库应用体系结构Access 20XX数据库应用体系结构用户界面(用户界面(User Interface,Access UI)决定着用户通过查询、窗体、宏、报表等查看、决定着用户通过查询、窗体、宏、报表等查看、编辑和使用数据的方式编辑和使用数据的方式。ACE引擎提供核心的数据库管理服务,包括数引擎提供核心的数据库管理服务,包括数据定义、数据存储、数据完整性、数据操作、据定义、数据存储、数据完整性、数据操作、数据检索、数据共享、数据加密,以及数据的数据检索、数据共享、数据加密,以及数据的导入、导出和链接等。导入、导出和链接等。数据库访问数据库访问接口接口Acces
3、s 20XX中涉及的数据库编程接口有中涉及的数据库编程接口有ODBC、DAO、OLE DB、ADO四种。四种。(1)ODBC目前,目前,Windows提供提供32位和位和64位位ODBC驱驱动程序,但在动程序,但在Access中,使用中,使用ODBC API访问数据库需要大量的访问数据库需要大量的VBA函数原型声明,函数原型声明,操作繁琐,因此很少使用。操作繁琐,因此很少使用。数据库访问接口数据库访问接口(2)DAOlDAO提供了一个访问数据库的对象模型,利用其提供了一个访问数据库的对象模型,利用其中定义的一系列数据访问对象(如:中定义的一系列数据访问对象(如:Database、Records
4、et等),可以实现对数据库的各种操作。等),可以实现对数据库的各种操作。(3)OLE DBlOLE DB是用于访问数据的是用于访问数据的Microsoft系统级别系统级别的编程接口。它是一个规范,定义了一组组件接口的编程接口。它是一个规范,定义了一组组件接口规范,封装了各种数据库管理系统服务,是规范,封装了各种数据库管理系统服务,是ADO的基本技术和的数据源。的基本技术和的数据源。数据库访问接口数据库访问接口(4)ADOlADO是基于组件的数据库编程接口。使用是基于组件的数据库编程接口。使用ADO可可以方便地连接任何符合以方便地连接任何符合ODBC(开放式数据库连接)(开放式数据库连接)标准的
5、数据库标准的数据库。lADO是是DAO的后继产物。相比的后继产物。相比DAO,ADO扩展扩展了了DAO使用的层次对象模型,用较少的对象、更使用的层次对象模型,用较少的对象、更多的方法和事件来处理各种操作,简单易用,是当多的方法和事件来处理各种操作,简单易用,是当前数据库开发的主流技术。前数据库开发的主流技术。设置DAO引用由于在创建数据库时系统并不自动引用由于在创建数据库时系统并不自动引用DAO库,所以需要用户自行进行引用设置。具体设库,所以需要用户自行进行引用设置。具体设置步骤如下:置步骤如下:(1)在)在VBE工作环境中,选择工作环境中,选择“工具工具”菜单中的菜单中的“引用引用”命令,命
6、令,打开打开“引用引用”对话框。对话框。(2)在)在“可使用的引用可使用的引用”列表中勾选列表中勾选 “Microsoft Office 14.0 Access Database Engine Object Library”,出现复选标志,出现复选标志 后单后单击击“确定确定”按钮。按钮。DAO对象模型DAO常用对象说明对象名称对象名称含义含义DBEngine数据库引擎数据库引擎Microsoft Jet Database EngineWorkspace表 示 工 作 区 , 打 开 到 关 闭表 示 工 作 区 , 打 开 到 关 闭 A c c e s s 数 据 库 期 间 为 一 个数
7、 据 库 期 间 为 一 个Workspace,可由工作区号标识,可由工作区号标识Database表示要操作的数据库对象表示要操作的数据库对象TableDef表示要操作的数据库对象中的数据表结构表示要操作的数据库对象中的数据表结构Field表示字段数据信息表示字段数据信息Index表示索引字段表示索引字段QueryDef表示要操作的数据库的查询设计信息表示要操作的数据库的查询设计信息Recordset表示打开数据表操作、运行查询返回的记录集表示打开数据表操作、运行查询返回的记录集Error表示使用表示使用DAO对象产生的错误信息对象产生的错误信息在DAO集合中获取对象在对象集合中,有上下隶属关
8、系,在引用时需在对象集合中,有上下隶属关系,在引用时需由上而下由上而下。例:例:要使用一个要使用一个TableDef对象,应先加对象,应先加载载DAO数据库引擎,然后打开一个工作区数据库引擎,然后打开一个工作区(Workspace),在工作区中使用),在工作区中使用Database对象打开数据库文件,最后才可以对象打开数据库文件,最后才可以使用使用TableDef对象取用数据表结构。对象取用数据表结构。ActiveX数据对象(ADO)ADO是基于组件的数据库编程接口,它为开是基于组件的数据库编程接口,它为开发者提供了一个强大的逻辑对象模型,以便开发者提供了一个强大的逻辑对象模型,以便开发者通过
9、发者通过OLE DB系统接口,以编程方式访问、系统接口,以编程方式访问、编辑、更新各种数据源(如:编辑、更新各种数据源(如:Access、SQL server、Oracle等),实现对数据源的数据等),实现对数据源的数据处理处理。ADO最普遍的用法就是通过应用程序,在关最普遍的用法就是通过应用程序,在关系数据库中检索一个或多个表,并显示查询结系数据库中检索一个或多个表,并显示查询结果。果。ADO引用在在Access 202X以后的版本中,每当建立以后的版本中,每当建立新数据库时,系统会自动引用新数据库时,系统会自动引用ADO链接库,链接库,不需要用户再做任何设置。不需要用户再做任何设置。ADO
10、主要对象ADO对象模型主要有对象模型主要有Connection、Command、Recordset三三个对象个对象成员。成员。lConnection对象的功能是用于指定数据提供者,对象的功能是用于指定数据提供者,完成与数据源的连接完成与数据源的连接;lCommand对象表示在对象表示在Connection对象的数对象的数据源中,要运行的据源中,要运行的SQL命令命令;lRecordset对象是指操作对象是指操作Command对象所返对象所返回的记录集。回的记录集。DAO编程1. 使用使用DAO访问数据库访问数据库使用使用DAO访问访问Access数据库数据库,由,由以下几个部分组成:以下几个部
11、分组成:(1)引用)引用DAO类型库类型库“Microsoft Office 14.0 Access Database Engine Object Library”;(2)定义)定义DAO数据类型的对象数据类型的对象变量;变量;(3)通过)通过Set语句设置各个对象变量的语句设置各个对象变量的值;值;(4)对通过对象变量获取的操作对象进行各种处理;)对通过对象变量获取的操作对象进行各种处理;(5)关闭对象,并释放对象占用的内存空间。)关闭对象,并释放对象占用的内存空间。DAO编程2. DAO常用对象的属性和方法常用对象的属性和方法通过通过DAO访问访问Access数据库,实际上就是数据库,实际
12、上就是利用利用Database、TableDef、Recordset等对象的属性和方法实现对数据库的操作。等对象的属性和方法实现对数据库的操作。DAO编程(1)Database对象的常用属性和方法对象的常用属性和方法属性属性/方法方法名称名称含义含义属性属性Name标识一个数据库对象的名称标识一个数据库对象的名称Updatable表示数据库对象是否可以被更改或更新表示数据库对象是否可以被更改或更新方法方法CreateTableDef创建一个新的表对象创建一个新的表对象CreateQueryDef创建一个新的查询对象创建一个新的查询对象OpenRecordSet创建一个新的记录集创建一个新的记录
13、集Execute执行一个动作查询执行一个动作查询Close关闭数据库关闭数据库DAO编程(2)TableDef对象的常用方法对象的常用方法TableDef对象代表数据库中的数据表结构。对象代表数据库中的数据表结构。在创建数据库时,对要生成的表,必须创建一在创建数据库时,对要生成的表,必须创建一个个TableDef对象来完成对表字段的创建。对象来完成对表字段的创建。TableDef对象最常用的方法是对象最常用的方法是CreateField,该方法的语句格式如下:该方法的语句格式如下:lSet = .CreateField(,)DAO编程(3)Recordset对象的常用属性和对象的常用属性和方法
14、方法-1属性属性/方方法法名称名称含义含义属性属性Bof如果为如果为True,表示指针已指向记录集的顶部,表示指针已指向记录集的顶部Eof如果为如果为True,表示指针已指向记录集的底部,表示指针已指向记录集的底部Filter设置筛选条件,用于将满足条件的记录过滤出来设置筛选条件,用于将满足条件的记录过滤出来RecordCount返回记录集对象中的记录个数返回记录集对象中的记录个数DAO编程(3)Recordset对象的常用属性和对象的常用属性和方法方法-2属性属性/方方法法名称名称含义含义方法方法AddNew添加新记录添加新记录Delete删除当前记录删除当前记录Edit编辑当前记录编辑当前
15、记录FindFirst查找满足条件的第一条记录查找满足条件的第一条记录FindLast查找满足条件的最后一条记录查找满足条件的最后一条记录FindNext查找满足条件的下一条记录查找满足条件的下一条记录FindPrevious查找满足条件的上一条记录查找满足条件的上一条记录Move移动记录指针位置移动记录指针位置MoveFirst将记录指针定位在第一条记录将记录指针定位在第一条记录MoveLast将记录指针定位在最后一条记录将记录指针定位在最后一条记录MoveNext将记录指针定位在下一条记录将记录指针定位在下一条记录MovePrevious将记录指针定位在上一条记录将记录指针定位在上一条记录
16、Requery重新运行查询,以便更新重新运行查询,以便更新Recordset中的记录中的记录Update刷新表,实现记录更新刷新表,实现记录更新ADO编程1. 使用使用ADO访问数据库访问数据库在在VBA中,使用中,使用ADO访问访问Access数据数据库库需要需要6个个步骤步骤。(1)定义)定义ADO数据类型的对象变量。数据类型的对象变量。ADO编程(2)建立连接。)建立连接。设置设置Provider属性值,定义要连接和处理的属性值,定义要连接和处理的Connection对象。将对象。将Provider属性值设置为,属性值设置为,表示表示ADO将通过版数据库引擎连接至将通过版数据库引擎连接至Access数据库。数据库。设置设置ConnectionString属性值。属性值。ADO没有没有DatabaseName属性,它使用属性,它使用ConnectionString属性与数据库建立连接。属性与数据库建立连接。ADO编程(3)打
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 直播带货公司重组规定
- 直播带货公司培训制度
- 2025年航空航天高精度加工技术在航空器激光设备加工中的应用报告001
- 2024年山东青年政治学院辅导员考试真题
- 工业互联网平台光通信技术升级与云计算服务的结合应用报告
- 2024年许昌市建安区招聘公益性岗位工作人员考试真题
- 2025年社交媒体舆情监测与危机公关跨行业案例分析报告
- 新能源汽车充电设施布局优化策略与2025年充电桩维护管理研究报告
- 2025年工业互联网平台5G通信模组适配性市场潜力与风险报告
- 2025至2030生化药物市场发展趋势分析与未来投资战略咨询研究报告
- 2023新译林版新教材高一英语必修一全册课文翻译(英汉对照)
- 物业工程维修作业安全操作指南
- 《铃儿响叮当的变迁》教学设计(江苏省市级优课)-九年级音乐教案
- 装修常用数据手册(空间布局和尺寸)
- 处方销毁申请登记表
- 河南省2014年中考语文现代文阅读真题
- 外研版一起小学英语四下《Module-6Unit-1-Ill-draw-the-pictures》课件
- 三明市公安局招聘警务辅助人员考试历年真题
- 卫生部手术分级目录(2023年1月份修订)
- LY/T 2121-2013檀香栽培技术规程
- 骨科出科试题带答案
评论
0/150
提交评论