本讲主要内容
? Access数据库概述 ( Access数据库的
对象, 字段常用, 数据类型, )
? Access数据库的建立 ( 建立 KSCJ库,
cjb表结构, 建立 cjb表, 给数据表中
输入记录 )
? Access与 VB( DAO,DAO的使用)
? DAO的使用( 引用 DAO,DAO对象
声明, 连接和关闭数据库, 操作数据
库 )
第八章
Ac
ce
ss


库(




Access数据库概述 (第 8章第 1讲)
Access是微软公司推出的 Office办公软件中的组件,
是一个 数据库管理程序,利用它可以实现,
? 存储几乎无限多的信息;
? 按照用户的工作方式组织信息;
? 根据指定的选择标准检索信息;
? 创建窗体,使用户输入信息更方便;
? 方便地通过 Web共享信息。
由于 Access数据库 操作简便, 可视化程度高,故被广
泛地应用。就目前统计在互联网上有关聊天室,BBC留言
版,论坛等 Web网站所用数据库 80%以上为 Access数据库。
目前 Access数据库有 97版和 2000版。
Access数据库的对象 (第 8章第 1讲)
Access是关系型数据库。 Access数据库的 对象 有 7种,
分别为表、查询、窗体、报表、页、宏和模块。其中,
,表, 是 Access数据库的核心,是存放数据的单元;
,查询, 是对 Access数据库的各种操作;
,窗体, 是用户对 Access数据库的操作界面,也叫查询界面;
,报表, 是对 Access数据库操作后,显示统计结果的界面;
,页, 是 HTML格式文件,产生 Web页是 Access数据库独有
的技术;
,宏, 是对 Access数据库操作的命令系列;
,模块, 是用 Visual Basic编写的程序。
字段常用, 数据类型, (第 8章第 1讲)
Access数据库是这样定义的:数据库是由许多, 表, 组成的,每个表
又是由许多, 字段, 构成的。其中, 字段, 的定义有严格的规定,,数据
类型, 的功能如表。
类型 功能说明
文本 字符型,最大值为 255
备注 字符型,无长度限制
数字 数字型,有字节、整数、长整数、单精度、同步复制
ID、小数之分
日期 /时间 日期型,有常规日期、长日期、中日期、短日期、长
时间、中时间、短时间之分
货币 货币型,有常规数字、货币、欧元、固定、标准、百
分比、科学记数之分
自动编号 数字型,为 Access自动操作,用户不能修改和输入
是 /否 逻辑型,有 True/False,Yes/No和 On/Off三种组合
类型 功能说明
另外字段还
有“必填字
段”、“默
认值”、
“允许空字
符串”、
“有效性规
则”、“索
引”等规定。
Access数据库的建立 (第 8章第 1讲)
Access数据库的文件名 后缀为,mdb。
这里我们以一个学生各种考试成绩数据库为例说
明 Access数据库的建立方法。
学生各种考试成绩数据库的名称为 KSCJ.mdb,
它应该包含一个表( cjb)。
建立 KSCJ库 (第 8章第 1讲)
? 从, 开始, 菜单或桌面启
动 Access。这时 Access数
据库软件会弹出一个对话
框,点击鼠标,如图所示 。
? 选择, 空 Access数据库,,
进入, 文件新建数据库,
对话框,点击鼠标,如图
所示 。
? 在对话框的, 文件名, 文
本框中输入 KSCJ,然后
单击, 创建, 按钮,即可
建立一个 KSCJ数据库。
但这时 KSCJ数据库中无
任何实际内容,无数据表,
点击鼠标,如图所示 。
cjb表结构 (第 8章第 1讲)
该表用于存放所有考试成绩记录,cjb表结构 如表所示。
字段名 数据类型 定义 允许空 必填字段 关键字 说明
XH 文本 最多 20个字符 否 是 否 学号
XM 文本 最多 16个字符 否 是 否 姓名
KM 文本 最多 40个字符 否 是 否 考试科目
CJ 数字 整数 否 是 否 考试成绩
RQ 日期 中长型 否 是 否 考试日期
BZ 备注 是 否 否 备注
创建表的方法有三种,使用设计器创建表, 使用向导创建
表 及 通过输入数据创建表 。这三种创建表的方法均为可视化操
作。
建立 cjb表 (第 8章第 1讲)
方法一:使用设计器创建表
在, 表, 对象视图下,双
击, 使用设计器创建表,,即
可进入设计界面,点击鼠标,
如图所示。
方法二:使用向导创建表
Access提供了二种标准数
据表建立向导,用户只需按提
示步骤选定操作即可。 点击鼠
标,如图所示。
方法三:通过输入数据创建表
通过输入数据创建表就是
在 Access提供的一个不定长、
不定制数据表中输入数据,
Access自动判定数据表的字段
类型和字段个数,从而完成数
据表的建立。 点击鼠标,如图
所示。
方法一 方法二方法三
给数据表中输入记录 (第 8章第 1讲)
建立了数据表后,就可给数据表中输入记录。在
Access中只需 双击数据表名 就可进入数据记录输入界面,
用户就可在可视的状况下输入数据,如图。
Access与 VB(第 8章第 1讲)
Visual Basic提供了许多访问
Access数据库的方法,最常用的方法
有二种,数据访问对象( DAO) 和
远程数据访问对象( RDO) 。 RDO
将在第 9章中作详细介绍,这里介绍
数据访问对象( DAO)。
DAO(第 8章第 1讲)
DAO对象包括 Database对象,
TableDef对象, Recordset对象
以及 QueryDef对象 。其模型结构
图如所示。
其中,Database 对象负责
与 Access数据库的连接。
QueryDef对象指定对 Access数
据库的执行命令。 Recordset对
象负责存储对 Access数据库执行
操作后的记录集。
DAO是 数据访问对象 ( Data Access Objects)。 Visual
Basic中将 DAO作为一个专门用于访问 Access数据库的对象,
采用 DAO进行数据库编程都是基于 DAO对象模型的编程。
引用 DAO(第 8章第 1讲)
在 Visual Basic中要使用 DAO对象就必须 引用
,Microsoft DAO 3.5 Object Library” 。引用方法是在
Visual Basic的, 工程, 菜单项中, 引用, 菜单子项中引
用 DAO,如图所示。
DAO对象声明 (第 8章第 1讲)
DAO对象声明 主要是 Database对象 和 Recordset对象
的声明。
比如,Dim MyData As Database
Dim MyRecordset As Recordset
这里将 MyData声明为了一个数据库,MyRecordset声明为了
一个记录集。一个数据库对象可以有许多记录集对象。
连接、关闭数据库 (第 8章第 1讲)
( 1)数据库 连接 的格式,
Set数据库对象名 = OpenDatabase (,实际数据
库, )
这里, 实际数据库, 包括数据库所在地址及数据库名全
称。
比如,Private Sub Form_Load()
Dim MyPath As String
MyPath = App.Path + "KSCJ.mdb"
Set MyData = OpenDatabase(MyPath)
End Sub
( 2)数据库 关闭 的格式,
数据库对象名 ﹒close
比如,MyData.Close 这样就关闭了数据库对象 (MyData)
的连接。
操作数据库 (第 8章第 1讲)
数据库操作的格式,
Set 记录集对象名 = 数据库对象名,OpenRecordset (SQL语言指令 )
这里对记录对象操作必须指定数据库对象。
例程,
Private Sub Get_Number()
Dim SQL As String
Dim i As Integer
i = 0
SQL = "select * from cjb"
Set myRecordSet = mydata.OpenRecordset(SQL)
Do While Not myRecordSet.EOF
MyRecordset.MoreNext
i = i + 1
Loop
MyRecordSet.Close
Labell.Caption = "共有 " +Str(i) + "条记录 "
End Sub
该程序的功能是读取 cjb
表中所有数据库的记录数,
并在标签 Label1上显示出
来。