Access交流网
  • 设为首页|收藏本站|繁体中文|手机版
  •     
  • Access培训-Access开发平台-Access行业开发

  • 首页
  • 资讯
  • 技巧
  • 源码
  • 行业
  • 资源
  • 活动
  • 关于

技巧

ACCESS数据库

启动/设置/选项/背景

修复/压缩

安全/加密/解密

快捷键

版本升级/其它等

数据表

命名方式/设计规范

表设计

查询

Sql语言基础

选择查询

更新查询

删除查询

追加查询

生成表查询

交叉表查询

SQL特定查询

查询参数

查询综合应用

界面/窗体/控件

标签

文本框

命令按钮

组合框/列表框

选项组/复选框/选项按钮

选项卡

子窗体

窗体本身/综合应用

其它

报表打印

报表设计

高级报表

模块/函数/VBA/API/系统

VBA基础

内置函数

调试/跟踪/Debug

模块/类模块

API/COM/系统相关

字符数字日期

网络通信游戏

加密解密安全

文件处理

经典算法

宏/菜单/工具栏/功能区

宏/脚本

菜单/工具栏

功能区/Ribbon

图表/图形/图像/多媒体

图表

图形/图像

音频

视频/动画

DAO/链接表/ADO/ADP

DAO/链接表/ODBC

ADO/RDO

ADP

ActiveX/第三方控件/插件

Treeview树控件

ListView列表控件

Toolbar工具栏控件

微软其它控件

Dbi-Tech

CodeJock

Grid++Report

FastReport

ComponentOne

加载项/插件/Addin

OFFICE集成/导入导出/交互

Excel导入导出/交互

Word导入导出/交互

PPT交互

Outlook控制/邮件

Text文本文件/INI/CSV

PDF/SWF/XML格式

CAD格式

Sharepoint/其它Office

SqlServer/其它数据库

表

视图

存储过程/触发器

函数

用户/权限/安全

调试/维护

SqlServer其它/综合

发布/打包/文档/帮助

开发版/运行时

打包/发布/部署

开发文档/帮助制作

Access完整行业系统

采购管理系统

销售管理系统

仓库管理系统

人力资源管理HRM

CRM管理系统

MRP/ERP管理系统

BRP/流程优化

其它管理系统

心得/经验/绝招
其它/杂项
Excel技巧

Excel应用与操作

Excel开发编程

Word技巧

Word应用与操作

Word开发编程

Outlook技巧

Outlook应用与操作

Outlook开发编程

热门文章

  • ACCESS转化成SQL2..
  • 在ADP中调用有参数存储过..
  • 如何更改Access表的字..
  • null值在SQL 语句和..
  • DAO实现的子窗体记录分页..
  • 在ADP中调用有参存储过程..

最新文章

  • 实验报告 --DAO与AD..
  • 用代码创建mdb格式的Ac..
  • 连接后台数据库提示 无法启..
  • 64位windows系统如..
  • Access的DAO准确获..
  • 利用代码自动创建ODBC源

联系方式

Access交流网(免费Access交流)

QQ:18449932 

网  址:www.access-cn.com

当前位置:首页 > 技巧 > DAO/链接表/ADO/ADP
DAO/链接表/ADO/ADP

VB通过DAO访问Access数据库

DAO就是Database access Object,数据库访问对象的英文缩写。在VB中提供了两种与Jet数据库引擎接口的方法:Data控件和数据访问对象(DAO)。Data控件只给出有限的不需编程而能访问现存数据库的功能,而DAO模型则是全面控制数据库的完整编程接口。Data控件将常用的DAO功能封装在其中,它与DAO控件的关系就好象内存与CACHE之间的关系一样,所以这两种方法并不是互斥的,实际上,它们常同时使用

引用DAO类型库
1、从“工程”菜单中选择“引用”菜单项;
2、在可引用列表框中选择“Microsoft DAO 3.6 Object Library”项
3、最后“确定”即可

设置DAO数据类型变量
DAO数据类型变量共分成两种:
1、Database变量
Public db As Database
对应于access数据库,通常在模块中被定义为Public全程变量
2、RecordSet变量
Dim rs As RecordSet

设置DAO数据类型变量(二)
建立了数据库对象变量后,我们便可打开数据库了,在一般情况下都只是访问一个数据库,当打开数据库后再对数据库中的各个记录进行操作,这就要用到Recordset 对象建立记录集
例如:

打开数据库
Private Sub Command_OpenDatabase_Click() Dim db as Database Dim rs As Recordset Set db = OpenDatabase ( App.path & "\数据库名称.mdb" ) Set rs = db.OpenRecordset ( " select * from 表名 " ) End Sub 这样,数据库中的记录便放到Recordset中,可以进行后续操作了

Opendatabase 方法
Opendatabase 方法是打开数据库并返回此数据库的database对象,其语法如下:
Set database的对象变量=opendatabase ([数据库名称及路径],[除外性],[只读])
除外性:由true和false值所构成,当值为true时代表仅允许唯一的使用者使用数据库。
只读:由true和false值所构成,为true代表数据库仅提供读取的服务

Opendatabase 方法(二)
OpenDatabase方法有两种给出路径的方法
Set db = OpenDatabase ( App.path & "\student.mdb" )
App.path对象返回目前运行程序所在的路径名称,使用相当路径避免了程序变换了路径的麻烦,但必须保证数据库和程序在同一文件夹下
Set db=OpenDatabase(“e:\student.mdb" ,
false,false)

Openrecordset 方法
Openrecordset方法用来创建一个新的recordset对象,语法为:
Set recordset 对象变量=数据库变量.openrecordset(来源,种类)
Vb所提供的recordset对象有5种,分别为:表(table)、动态集(dynaset)、快照集(snapshot)、动态(dynamic)、正向(forward-only),其中经常用的时动态集(dynaset),它实际上是引用一个或多个表种数据记录的集合,是功能最强的数据记录集合类型

Openrecordset 方法
Set rs = db.OpenRecordset ( " select * from 表名 " )
Set rs = db.OpenRecordset ( “ select * from 表名 ”,dbopendynaset )

Fields集合
Fields集合包括结果集合全部 Field对象,这些 Field对象引用方法为: RS.Fields(I),其中 I是该 Field对象在中的位置序号,从 0开始计数, RS.Fields(0)表示你的数据库的第一个字段,如:
RS.Fields(I)=”111”

使用数据库
当打开数据库,建立Recordset 记录集后,便可浏览、删除、添加、查找数据库中的内容
使text显示数据如下:
Text1.caption=rs.fields(0)
Text1(I).caption=rs.fields(I)
Recordcount 属性
Recordcount 属性用来记录目前数据记录的数量,如判断数据库是否为空:
If rs.recordcount > 0 then
End if

删除记录
Private Sub cmd_del_Click() On Error GoTo handle Dim msg as string msg = "是否要删除记录"& Chr$(10) msg = msg & label(0) ′把删除记录的代号加入msg中 If Msgbox(msg , 17 , "删除记录") <> 1 Then Exit sub rs.delete rs.Movenext If rs.EOF = True Then rs.MovePrevious End if   

删除记录(二)
for I = 0 to 11 label(I).caption = rs.Fields(I) & "" next Exit Sub
handle: MsgBox "该记录无法删除!!!" End Sub
On error goto 语法
目的是为了程序运行时,一旦发生错误,即可通过该程序代码,将程序运行流程切换到适当位置,进行适当处理,避免死机
On error goto 的程序代码编写位置,必须在发生错误的程序代码之前,因此,常常将它写在程序或某个程序功能模块的最前面
添加记录
向数据库中添加记录比较麻烦一点,大致分为三步:首先,用AddNew方法向数据库添加一个新的空白记录;其次,将要输入的数据分别赋到数据库的各个字段中;最后,用Updata的方法,把记录写到数据库中去

添加记录
Private Sub cmd_new_Click() rs.AddNew For I = 0 to 11 rs.Fields(I) = TextBox(I).Text Next rs.Updata End Sub   
查找记录
Private Sub Cmd_search_Click() Set rs = dbase.openRecordset("表名",dbopenDynaset) rs.findfirst "字段名= ' " & Text.Text & " ' " ′ Text.Text是输入的关键字 if rs.Nomatch = True then Msgbox "对不起,没有该记录" else For I = 0 to 11 label(I).caption = rs.Fields(I) & "" Next End if rs.close End Sub   
修改记录
Rs.edit
Rs.fields(I)=text1(I)
Rs.updata

发布人:未知-http://www_aspsky_net.htm  
分享到:
点击次数:  更新时间:2006-11-20 22:49:13  【打印此页】  【关闭】
上一条:压缩、修复指定的数据库  下一条:全面优化ADO



相关文章

  • • 实验报告 --DAO与ADO效率之比较
  • • 用代码创建mdb格式的Access文件
  • • 连接后台数据库提示 无法启动应用程序。工作组信息文件丢失,或是已被其它用户以独占方式打开 的解决办法
  • • 64位windows系统如何使用64位的ADO连接Accesss accdb数据库(ACE.OLEDB)
  • • Access的DAO准确获取记录集Recordset的记录数Recordcount
  • • 利用代码自动创建ODBC源
  • • 在打开Ado记录集之前尽量先判断记录集有否打开,如打开则先关闭之
  • • 快速获取Excel文件所有工作表表名

热门文章

  • [2009-04-15] vba的instr到sqlserver存储过程该怎么写?access数据库
  • [2017-04-10] DAO与ADO创建索引时一些属性的区别及对应关系access数据库
  • [2005-02-06] 各个版本 MDAC 所包括的文件及相关信息access数据库
  • [2009-06-12] 用VBA代码+DAO生成带条件的交叉表查询access数据库
  • [2005-02-05] 如何在ADP中读取SQL服务器当前时间access数据库
  • [2009-04-17] ADP禁止SHIFT键access数据库

热门产品

公司动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图

Access交流网 版权所有 1999-2018 粤ICP备10043721号

QQ:18449932

Access应用 Access培训 Access开发 Access平台

access|数据库|access下载|access教程|access视频|access软件

Powered by MetInfo 5.3.12 ©2008-2023  www.metinfo.cn