打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VBA|数据库操作01:使用ADO访问数据库
小智雅汇 2017-11-12 15:48:35

ADO(ActiveX Data Objects)是微软推出的一种数据访问技术。它被设计用来提供通用数据访问。

1 SQL结构化查询

结构化查询语言SQL(Structured Query Language)是目前各种关系数据库系统中广泛采用的标准语言,ADO对象通过SQL语言来操作数据库的数据。

SQL语言的功能强大,但其语言却很简单。数据库的基本操作主要是4个方面:“增”、“查”、“删”、“改”,对应下面4个命令:

“增”,Insert:用于增加数据(记录)到数据库的表;

“查”,Select:用于检索数据;

“删”,Delete:用于从数据库的表中删除数据(记录);

“改”,Update:用于从数据库的表中修改现存数据(记录);

除了上面4个最常用的命令以外,还有:

Create:用于创建用户和数据库等;

Drop:用于删除表及索引;

2 ADO对象模型

2.1 要在VBA中使用ADO对象,必须先为当前工程引用ADO对象库

ALT+F11(打开VBE)→工具→引用,打开“引用”对话框“,在列表框中勾选”Microsoft ActiveX Data Objects 2.8 Library";

2.2 ADO对象模型组成

ADO对象模型定义了一个可编程的分层对象集合,主要由3个对象成员(Connection、Command和Recordset)和集合对象Errors、Parameters及Fields等组成。

3 使用ADO对象编程访问数据库的步骤

使用ADO对象编程访问数据库,一般按以下4个步骤编写代码:

3.1 使用Connection对象连接到数据源;

3.2 使用Recordset对象的打开记录集方法获得记录集对象(也可使用Command对象执行SQL语句获得记录集对象)。

3.3 在程序中访问记录集中的数据(添加、更新和删除等操作);

3.4 使用Connection对象中断连接。

有如下数据库:

有如下任务:在“人事管理”数据库的表Emp中进行查询,将EmpID列为2008028人员的资料显示到工作表“员工”中,代码如下:

Sub 查询员工资料()

Dim cnn As New Connection, rst As Recordset, fld As Field

Dim strSql As String, i As Long, strConn As String

strSql = "SELECT * FROM Emp WHERE EmpID='2008028'"

strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='"

strConn = strConn & ActiveWorkbook.Path & "人事管理.accdb'"

cnn.ConnectionString = strConn '设置连接字符串

cnn.Open '打开连接

Set rst = cnn.Execute(strSql) '执行SQL语句生成Recordset

With Worksheets("员工")

i = 1

For Each fld In rst.Fields '输出表头

.Cells(1, i) = fld.Name '每列为一个字段名

i = i + 1

Next

j = 1

Do While Not rst.EOF '循环处理记录集中的记录本

i = 1

j = j + 1

For Each fld In rst.Fields '循环处理各字段

.Cells(j, i) = fld.Value '显示字段的值

i = i + 1

Next

rst.MoveNext '下一记录

Loop

End With

cnn.Close

Set rst = Nothing

Set cnn = Nothing

End Sub

上面代码执行后,即可在工作表“员工”中显示如下数据:

-End-

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
第八讲 从创建ADO对象,到打开记录集
HOW TO:将数据从 Microsoft SQL Server 导入 Microsoft Excel
Excel VBA ADO SQL入门教程024:初识Recordset对象
VBA连接Mysql数据库
他山之石——VBA数据库操作
Python如何操作MS Access数据库
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服