购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1.3 Access数据库的结构

现代数据库的结构,是包含数据以及对数据进行各种基本操作的对象的集合。Access正是这样一种结构,所有对象都存放在同一个ACCDB文件中,而不是像其他数据库那样将各类对象分别存放在不同的文件中,这样做的好处是方便了数据库文件的管理。Access中将数据库文件称为数据库对象。

数据库对象是Access最基本的容器对象,它是关于某个特定主题的信息集合,具有管理本数据库中所有信息的功能。在数据库对象中,用户可以将自己不同的数据分别保存在独立的存储空间中,这些空间被称为数据表。可以使用查询从数据表中检索需要的数据,也可以使用联机窗体查看、更新数据表中的数据;同样可以使用报表以特定的版面打印数据;还可以通过Web页实现数据交换。

Access数据库对象共有6类不同的子对象,它们分别是表、查询、窗体、报表、宏和模块。不同的对象在数据库中起不同的作用,表是数据库的核心与基础,存放着数据库中全部的数据;报表、查询都是从数据表中获得信息,以满足用户特定的需求;窗体可以提供良好的用户操作界面,通过它可以直接或间接地调用宏或模块,实现对数据的综合处理。图3-1为数据库“设计”视图窗口,其左侧列出了Access数据库的6类对象。

图3-1 数据库“设计视图”窗口

1 . 表对象

表是数据库中用来存储数据的对象,是整个数据库系统的基础。Access允许一个数据库包含多个表,通过在表之间建立“关系”,可以将不同表中的数据联系起来,以供用户使用。

在表中,数据以行和列的形式保存。表中的列被称为字段,字段是Access信息最基本的载体,说明了一条信息在某一方面的属性。表中的行被称为记录,一条记录就是一条完整的信息。

2 . 查询对象

通过查询,可以按照一定的条件或准则从一个或多个表中筛选出需要的字段和记录,并将它们集中起来,形成动态数据集,这个动态数据集将显示在虚拟数据表中,以供用户浏览、打印和编辑。需注意的是,如果用户对这个动态数据集中的数据进行了修改,则Access会自动将修改内容反映到相应的表中。

查询对象必须基于数据表对象而建立,虽然查询结果集是以二维表的形式显示,但它们不是基本表。查询本身并不包含任何数据,它只记录查询的筛选准则与操作方式。每执行一次查询操作,其结果集显示的总是查询那一时刻数据表的存储情况,也就是说,查询结果是静态的。

可以使用查询作为窗体、报表和数据访问页的记录源。

3 . 窗体对象

窗体是用户和数据库联系的一种界面,它是Access数据库对象中最具灵活性的一个对象,其数据源可以是表或查询。可以将数据库中的表链接到窗体中,利用窗体作为输入记录的界面,或将表中的记录提取到窗体上供用户浏览和编辑处理;可以在窗体中使用宏,把Access的各个对象方便地联系起来;还可以在窗体中插入命令按钮,编制事件过程代码以实现对数据库应用的程序控制。

窗体的类型比较多,概括来讲,主要有以下3类。

● 数据型窗体:主要用于实现用户对数据库中相关数据的操作,也是数据库应用系统中使用最多的一类窗体。

● 控制型窗体:在窗体上设置菜单和命令按钮,用以完成各种控制功能的转移。

● 提示型窗体:显示文字、图片等信息,主要用于数据库应用系统的主界面。

4 . 报表对象

报表是用打印格式展示数据的一种有效方式。在Access中,如果要打印输出数据或与数据相关的图表,可以使用报表对象。利用报表可以将需要的数据从数据库中提取出来,并在进行分析和计算的基础上,将数据以格式化的方式发送到打印机。

多数报表都被绑定到数据库中的一个或多个表和查询中。报表的记录源来自于基础表和查询中的字段,且报表无须包含每个基础表或查询中的所有字段,可以按照需要控制显示字段及其显示方式。利用报表不仅可以创建计算字段,而且还可以对记录进行分组以便计算出各组数据的汇总值。除此以外,报表上所有内容的大小和外观都可以人为控制,使用起来非常灵活。

5 . 宏对象

宏是指一个或多个操作的集合,其中每个操作都可以实现特定的功能。使需要多个指令连续执行的任务能够通过一条指令自动完成,这条指令就被称为宏。

宏可以是包含一个操作序列的宏,也可以是由若干个宏组成的宏组。Access中,一个宏的执行与否还可以通过条件表达式予以控制,即可以根据给定的条件决定在哪些情况下运行宏。

利用宏可以简化操作,使大量重复性的操作得以自动完成,从而使管理和维护Access数据库更加方便和简单。

6 . 模块对象

模块是将VBA的声明和过程作为一个单元进行保存的集合,即程序的集合。设置模块对象的过程也就是使用VBA编写程序的过程。尽管Access是面向对象的数据库管理系统,但其在针对对象进行程序设计时,必须使用结构化程序设计思想。每一个模块由若干个过程组成,而每一个过程都应该是一个子程序(Sub)过程或一个函数(Function)过程。

需要指出的是,尽管Microsoft在推出Access之初就将产品定位为不用编程的数据库管理系统,但实际上,只要用户试图在Access的基础上进行二次开发以实现一个数据库应用系统,用VBA编写适当的程序是必不可少的。总而言之,开发Access数据库应用系统时,必然需要使用VBA模块对象。 Zxch766aJke/6ryK0/4q3wNfTaewQFovE+zyyfq4rNCagtx6R2ShCSD1knOjC1IK

点击中间区域
呼出菜单
上一章
目录
下一章
×