打开APP
userphoto
未登录

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

开通VIP
第七讲 如何利用Recordset对象打开数据库的数据记录集
我们上一讲讲了Recordset 对象的一些属性、方法和事件。我们今日继续讲解Recordset 对象的相关知识,如何利用Recordset对象打开数据库的数据记录集合。
在讲解之前,我们还要补充些必要的知识点:

1  Recordset 对象的更新和访问

1.1  Recordset 对象能够支持两种更新类型
① 立即更新,一旦调用 Update 方法,所有更改被立即写入数据库。
② 批更新,provider 将缓存多个更改,然后使用 UpdateBatch 方法把这些更改传送到数据库。
1.2 另外在访问记录的时候,ADO定义了 4 中不同的游标(指针)类型
① 动态游标 :允许您查看其他用户所作的添加、更改和删除
② 键集游标 :类似动态游标,不同的是您无法查看有其他用户所做的添加,并且它会防止您访问其他用户已删除的记录。其他用户所做的数据更改仍然是可见的。
③ 静态游标 :提供记录集的静态副本,可用来查找数据或生成报告。此外,由其他用户所做的添加、更改和删除将是不可见的。当您打开一个客户端 Recordset 对象时,这是唯一被允许的游标类型。
④ 仅向前游标: 除仅允许在记录中向前滚动之外,其行为类似静态游标。这样,当需要在 Recordset 中单程移动时就可提高性能。
1.3为什么要设计这四个游标类型呢?
这就是搭建数据库的良苦用心,这四种类型也就是客户访问数据库的不同类型,或者称之不同的权限,有的是完全所有权权限访问的,任何访问都可以享用,有的只是拥有部分权限,这要依据用户的性质来决定你所享受的权限了。当然这点和VBA的联系还不是十分的密切,只是讲到数据库和大家顺带说一下。

2  ADO三个对象间的相互联系

2.1   Command对象和Recordset对象依赖于Connection对象的连接;
2.2  Command对象结合SQL命令可以取代Recordset对象,但远没有Recordset对象灵活、实用;
2.3  Recordset对象它只能实现数据表内记录集操作. 记录集(Recordset):对表执行查询操作时,返回的一组特定记录。

3  打开一个Recordset记录集

一定要清楚,打开记录集前要连接数据库,连接Connection请参考上一讲内容;
   Dim cnADO As New ADODB.Connection
   Dim strPath As String
   strPath = ThisWorkbook.Path & "\mydata.accdb"
   cnADO.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strPath 
在打开记录集前还要做的工作有:声明Recordset对象,创建Recordset对象
 Dim rsZYS As ADODB.Recordset
 Set rsZYS = New ADODB.Recordset
 rsZYS.Open "职员表", cnADO, 1, 3
 MsgBox rsZYS.RecordCount
 rsZYS.Close
 cnADO.Close
 Set rsZYS = Nothing
Set cnADO = Nothing
代码解读:
①  rsZYS.Open "职员表", cnADO, 1, 3是打开记录集,。
② MsgBox rsZYS.RecordCount 弹出对话框,提示职员表的信息个数
③ rsZYS.Close
  cnADO.Close
  关闭记录集和数据库的连接,注意要先关闭记录集,再关闭连接,和打开的顺序是相反的。
④ Set rsZYS = Nothing
Set cnADO = Nothing
释放内存,
运行后会弹出记录数:(数据库内记录行数)
这节的内容是我们开始进入数据库内部的操作了,大家不要急,要慢慢来,我数据库的讲解是循序渐进的。


今日内容回向:
1  Recordset 对象 有几种更新方式?
2  Recordset 对象 如何打开记录集?
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VBA与数据库解决方案:Recordset记录集合的动态查询,并显示结果
利用VBA向一个已有的数据表中添加数据记录的方法
VB使用ADODB操做数据库
关于recordcount等-1的问题
ADODB.Recordset.Open 中参数的用法 - ivbapplication的...
vb读取xls文件而不打开excel进程 ado数据库方法读取xls
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服