第一部分 数据库技术——Access 2003
复习指导
第一章 认识Access 2003
复习要求
1. 掌握数据库及数据库对象的基本概念;
2. 掌握Access 2003的启动和退出;
3. 掌握Access 2003的用户界面;
4. 掌握Access 2003帮助系统。
复习内容
一、数据库的基本概念
1. 数据
数据是描述客观事物特征的抽象化符号,既包括数字、字母、文字及其他特殊字符组成的文本形式的数据,还包括图形、图像、声音等形式的数据。实际上,凡是能够由计算机处理的对象都可以称为数据。
2. 数据库
数据库是存储在计算机存储设备上、结构化的相关数据的集合。数据库不仅包含描述事物的具体数据,而且反映了相关事物之间的关系。在Access数据库中,数据以二维表的形式存放,表中的数据相互之间均有一定的联系。
3. 数据库管理系统
数据库管理系统是对数据库进行管理的软件。其主要作用是统一管理、控制数据库的建立、使用和维护。
4. 数据库系统
数据库系统由计算机的软、硬件组成,它主要解决三个问题:有效地组织数据;将数据输入到计算机中进行处理;根据用户的要求将处理后的数据从计算机中提取出来。
数据库系统由5 部分组成:计算机硬件系统、数据库、数据库管理系统及相关软件、数据库管理员、用户。
5. 数据模型
数据模型是指数据库中数据与数据之间的关系。任何一种数据库系统都是基于某种模型的。数据库管理系统常用的数据模型有层次模型、网状模型和关系模型三种。
层次模型:用树形结构表示数据及其联系的数据模型称为层次模型。
网状模型:用网状结构表示数据及其联系的数据模型称为网状模型。
关系模型:用二维表表示数据及其联系的数据模型称为关系模型。关系模型建立在关系代数基础上。关系模型具有数据结构单一、理论严密、使用方便、易学易用的特点,因此目前绝大多数数据库系统都采用关系模型。
6. 关系数据库
按照关系模型建立的数据库称为关系数据库。关系数据库中的所有数据均组织成一个个的二维表,这些表之间的联系也用二维表表示。
(1)数据元素:关系数据库中最基本的数据单位。
(2)字段:二维表中的一列称为一个字段。每一个字段均有一个唯一的名字(称为字段名),字段是有宽度的,不同数据类型对应的最大宽度也不同。
(3)记录:二维表中的每一行称为一个记录,每一个记录具有一个唯一的编号(称为记录号)。每个记录中不同字段的数据可能具有不同的数据类型,但所有记录的相同字段的数据类型一定是相同的。
(4)数据表:具有相同字段的所有记录的集合。一个数据库往往由若干个数据表组成,每一个数据表都有一个唯一的名字,称为数据表名。
二、启动和退出Access 2003
1. 启动Access 2003
启动Access 2003的常用方法有3种。
(1)通过“开始”菜单启动
选择“开始”→“所有程序”→“Microsoft Office”→“Microsoft Office Access 2003”菜单命令,即可启动Access 2003。
(2)通过“开始”菜单中的Access 2003选项启动
如果在“开始”菜单中加入Access 2003选项,则直接单击“开始”菜单中的“Microsoft Office Access 2003”选项图标,即可启动Access 2003。
(3)通过桌面快捷方式启动
如果在桌面上创建了Access 2003的快捷方式,则在桌面上双击Access 2003的快捷方式图标,即可启动Access 2003。
2. 退出Access 2003
退出Access 2003通常有5种方法。
(1)单击Access 2003用户界面主窗口的“关闭”按钮。
(2)双击Access 2003标题栏左边的控制菜单图标。
(3)单击Access 2003的控制菜单图标,在弹出的下拉菜单中,单击“关闭”命令。
(4)在菜单栏中单击“文件”→“退出”命令。
(5)按【Alt+F4】快捷键。
3. 在桌面上创建Access 2003快捷方式
步骤如下:
(1)选择“开始”→“所有程序”→Microsoft Office→Microsoft Office Access 2003命令。
(2)单击鼠标右键,在快捷菜单中选择“发送到”→“桌面快捷方式”命令。
三、Access 2003的用户界面
Access 2003的用户界面由标题栏、菜单栏、工具栏、工作区和任务窗格组成。
1. 标题栏
标题栏在Access主窗口的最上面,依次显示“控制菜单”图标、窗口的标题Microsoft Access和控制按钮。
2. 菜单栏
菜单栏中所包含的子菜单根据当前工作状态的不同而不同,子菜单中各菜单项的名称显示的方式不同,其表示的含义也不相同。
(1)命令名称的右侧带有三角符号:该命令下有相应的子菜单。
(2)命令名称的左侧带有图标:说明该命令已经被设置为工具栏中的按钮。
(3)命令名称的右侧带有字母:打开该命令的快捷方式。
(4)命令名称的右侧带有省略号(…):该命令执行后会出现对话框。
(5)命令名称显示为浅灰色:当前状态下该命令无效。
3. 工具栏
工具栏位于菜单栏的下面,Access 2003将常用的命令以工具按钮的形式放在工具栏里。可以使用工作栏中的按钮快速执行命令,提高工作效率。要显示工具栏,可使用“视图”菜单中的“工具栏”选项。
4. 工作区
工作区占Access 2003主窗口的大部分面积,对数据库的所有操作都在工作区中进行,其操作的结果也都显示在工作区中。
5. 任务窗格
“任务窗格”是Microsoft Office 2003所有组件中都具有的功能之一。当打开Access 2003的主窗口时,标题为“开始工作”的“任务窗格”会自动地显示在窗口的右边,可以通过“视图”菜单中的“任务窗格”命令打开或关闭“任务窗格”。
Access 2003中有“开始工作”、“帮助”、“搜索文件”等7个任务窗格,在对数据库进行操作时,单击“任务窗格”右上角的“其他任务窗格”按钮,则弹出“其他任务窗格”下拉菜单,用鼠标单击所选任务窗格标题,即可打开相应的任务窗格。
四、Access 2003的数据库窗口
当创建一个新的数据库文件或打开一个已有的数据库文件时,在Access 2003工作区上就会自动打开数据库窗口。数据库窗口是Access 2003数据库文件进行操作的中心,从这里可以创建和使用Access 2003数据库的任何对象,数据库窗口包含了当前所处理的数据库中的全部内容。
数据库窗口包括标题栏、工具栏、数据库对象栏和对象列表窗口。
1. 标题栏
标题栏显示数据库的名称和文件格式。
2. 工具栏
工具栏列出了操作数据库对象中的一些常用工具,共有“打开”、“设计”等8个常用工具。
(1)“打开”按钮:可以打开所选择的对象进行查看。
(2)“设计”按钮:可以对打开的对象进行编辑修改。
(3)“新建”按钮:可以创建一个新对象。
其他5个按钮分别是“删除”、“图标列表”(3种)和“属性”,将鼠标指针移到按钮上,可以显示该按钮的名称。
3. 数据库对象栏
数据库对象栏中给出了7 个数据库对象和“组”与“收藏夹”两个特殊对象。在对象栏中选择一种对象,则在右侧的对象列表窗口中显示相应的对象列表,从而可以对选择的对象进行操作。
4. 对象列表窗口
对象列表窗口的上半部分显示的是新建对象的快捷方式列表,使用快捷方式可以方便、高效地创建数据库对象,创建不同的数据库对象时其列表也不一样。对象列表窗口的下半部分显示的是所选对象的列表。
五、Access 2003的数据库对象
Access 2003的数据库对象有7种,分别是表、查询、窗体、报表、页、宏、模块。
1. 表
表是Access 2003存储数据的地方,是数据库的核心和基础,其他数据库对象的操作都是在表的基础上进行的。Access 2003数据库中的表是一个二维表,以行和列来组织数据,每一行称为一条记录,每一列称为一个字段。在一个数据库中,存储着若干个表,这些表之间可以通过有相同内容的字段建立关系,表之间的关系有一对一、一对多和多对多。
对于表中保存的数据,可采用不同的方式进行查看,如从表中查看、从查询中查看、从窗体中查看、从报表中查看、从页中查看等。当更新数据时,所有出现该数据的位置均会自动更新。
2. 查询
查询是Access 2003数据库的一个重要对象,使用查询可以按照不同的方式查看、分析和更改数据,通过查询可以筛选出所需要的记录,构成一个新的数据集合,而查询的结果又可以作为数据库中其他对象的数据来源。
3. 窗体
窗体是数据库和用户之间的接口,使用窗体可以方便快捷地输入、编辑、查询、筛选和显示数据。在一个完善的数据库应用系统中,用户都是通过窗体对数据库中的数据进行各种操作的,而不是直接对表、查询等进行操作。
4. 报表
在许多情况下,数据库操作的结果是要打印输出的,报表就是把数据库中的数据打印输出的特有形式。使用报表,不仅能够以格式化的形式显示数据、输出数据,还可以利用报表对数据进行排序、分组、求和及求平均等统计计算。
5. 页
页也称为数据访问页,使用它也可以将数据库中的数据发布到网络上去。使用数据访问页既可以在网络上静态地查看数据,还可以通过网络对数据进行添加、修改、删除等操作。
6. 宏
宏是Access 2003数据库中的一个重要对象,但与其他数据库对象不同的是,宏并不直接处理数据库中的数据,而是一个组织其他5 个对象(表、查询、窗体、报表和页)的工具。例如,可以建立一个宏,通过宏打开某个窗体、打印某份报表等。宏可以包含一个或多个宏命令,也可以是由几个宏组成的宏组。
7. 模块
模块是用VBA(Visual Basic for Application)语言编写的程序段,用来完成利用宏处理仍然很困难的操作。将宏与报表、窗体等对象相结合,可以开发出高质量、高水平的数据库应用系统。
六、Access 2003的帮助系统
Access 2003提供了方便、功能完善的帮助系统,可以帮助用户更快地掌握Access 2003的使用,使用帮助系统主要有3种方法。
1. 使用“帮助”任务窗格
单击工具栏上的“帮助”按钮,或单击菜单“帮助”→“Microsoft Office Access帮助”命令;或按下【F1】键,都会在Access 2003用户界面的右侧出现“Access帮助”任务窗格。在该任务窗格的搜索栏中输入相关的主题信息,可以查找到本机或网上的相应主题的帮助内容。
2. 使用“Office助手”
单击菜单命令“帮助”→“显示Office助手”,可以显示“Office助手”的动画形象和对话框,在框中输入需要帮助的关键词,再单击“搜索”按钮,则可在“搜索结果”任务窗格中得到相应的帮助信息。右键单击“Office助手”动画图像,则可以对“Office助手”进行相关的设置。
3. 使用上下文帮助
Access 2003在很多地方提供上下文即时帮助,在某个对话框或窗口中按下【F1】键,则可以打开与该对话框或窗口有关的上下文帮助信息。
第二章 创建数据库和表
复习要求
1. 掌握数据库和表的相关概念;
2. 熟练掌握Access 2003数据库的创建;
3. 熟练掌握使用向导创建表;
4. 熟练掌握使用表设计器创建表;
5. 熟练掌握表中字段属性及设置。
复习内容
一、创建数据库
Access 2003提供多种创建数据库的方法,主要有创建一个空数据库、使用模板创建数据库、使用向导创建数据库、根据现有文件创建数据库等。最常用而且灵活的一种方法是先创建一个空数据库,然后向空数据库添加表、查询、窗体、报表等数据库对象。
1. 创建空数据库
(1)启动Access 2003,单击工具栏上的“新建”按钮,或单击菜单命令“文件”→“新建”,在主窗口右侧出现“新建文件”任务窗格。
(2)在任务窗格中的“新建”栏中单击“空数据库”,在对话框中指定文件名和保存位置,单击“创建”按钮即可创建空数据库。创建空数据库后就可以在该数据库中创建表和其他的数据库对象。
2. 利用“本机上的模板”创建数据库
Access 2003提供了10个数据库模板,利用这些模板,可以快速建立所需的数据库。
(1)在主窗口右侧的“新建文件”任务窗格中单击“本机上的模板”,弹出“模板”对话框。
(2)在“模板”对话框中,单击“数据库”选项卡,在出现的模板中,选中所需要的数据库模板,单击“确定”按钮,在弹出的“文件新建数据库”对话框中输入文件的保存位置和文件名,单击“创建”按钮,在“数据库向导”的提示下完成数据库的创建。
3. 打开和关闭数据库
(1)数据库的打开
Access 2003启动后,单击工具栏中的“打开”按钮,或单击“文件”→“打开”菜单命令,弹出“打开”对话框。在对话框中选择要打开的数据库文件的存放位置和文件名等。
(2)打开数据库的方式
●“以只读方式打开”,打开的数据库只能查看但不能编辑。
●“以独占方式打开”,当以独占方式打开数据库时,也就禁止了他人打开该数据库。
●“以独占只读方式打开”,打开的数据库既是只读的,又是独占的。
● 若没有以上几种情况的限制,可直接单击“打开”按钮。
(3)数据库的关闭方法
● 直接单击数据库窗口右上角的“关闭”按钮。
● 单击“文件”→“关闭”菜单命令。
二、使用向导创建表
1. 表的结构和内容
数据表由表的结构与表的内容两部分组成。表的结构是指组成数据表的字段及其字段属性,表的内容是指表中的具体数据。
2. 主键
主键是数据表中其值能唯一标识一条记录的一个字段或多个字段的组合。主键有以下几个特征:
● 一个表中只能有一个主键。
● 如果表中没有一个字段的值可以唯一标识一条记录,那么就要选择多个字段组合在一起作为主键。
● 使用主键可以避免同一记录的重复录入,还能加快表中数据的查找速度。
3. 自动编号
在使用表向导创建表时,如果选择系统自动设置主键,Access 2003会自动添加一个“自动编号”类型的字段,并将其设置为主键,输入数据时,该字段自动填入阿拉伯序列数字。
4. 使用向导创建表的步骤
(1)在数据库窗口中选择“表”对象,单击“新建”按钮,在“新建表”对话框中选择“表向导”选项。
(2)在“表向导”的第一个对话框中,选择相应的示例表和需要的字段,并添加到“新表中的字段”栏。在“重命名字段”对话框中给新字段重新命名。
(3)在“表向导”的第二个对话框中,输入表名,选择相应的主键设置方法。
(4)在“表向导”的第三个对话框中,根据需要进行相应的选择。
三、使用表设计器创建表
1. 数据类型
Access 2003数据表的字段有10种数据类型。
(1)文本
文本指文字或文字与数字的组合,或者用于不需要计算的数字等。文本类型的字段宽度不能超过255个字符。
(2)备注
由于文本类型可以表示的长度有限,所以对于内容较多的长文本信息就要选用备注类型。备注最多能存储65536个字符。备注类型主要用于长文本,如注释或说明信息。
(3)数字
数字用于要进行算术计算的数据,但涉及货币的计算除外(货币要使用“货币”类型)。
数字类型按照字段的大小又可分为字节型、整型、长整型、单精度型、双精度型等。字节型占1字节宽度,可表示0~255的整数;整型占2字节宽度,可表示-32768~+32767的整数;长整型占4 字节宽度,能表示更大的数字范围;单精度型可以表示小数,双精度型可以表示更为精确的小数。
(4)日期/时间
日期/时间用于表示日期和时间。这种类型的数据有多种格式可选,如常规日期(yyyy-mm-dd hh:mm:ss)、长日期(yyyy年mm月dd日)、长时间(hh:mm:ss)等。
(5)货币
货币用于表示货币值,并且计算时禁止四舍五入。
(6)自动编号
自动编号在添加记录时自动给每一个记录插入的唯一顺序编号(每次递增1)或随机编号。
(7)是/否
是/否用于只可能是两个值中的一个(如“是/否”、“真/假”、“开/关”)的数据。用这种数据类型可以表示是否团员、婚否、是否在职等情况。
(8)OLE对象
OLE是对象嵌入与链接的简称。该数据类型字段中可保存声音、图像等多媒体信息。
(9)超链接
超链接用于存放链接到本地或网络上的地址。
(10)查阅向导
查阅向导用于实现查阅其他表中的数据,它允许用户选择来自其他表或来自值列表的值。
2. 设置主键的方法
(1)将表中的一个字段设置为主键
打开表的设计视图,用鼠标右击要设置的字段,在快捷菜单中选择“主键”,该字段左侧的按钮上会出现钥匙形的主键图标。
(2)将表中的多个字段组合设置为主键
按住【Ctrl】键,用鼠标分别单击字段左侧的按钮,选中多个字段后,单击鼠标右键,在快捷菜单中选择“主键”,这时所有被选择的字段左侧的按钮上都会出现钥匙形的主键图标。
3. 使用设计器创建表的步骤
(1)在数据库窗口中,双击“使用设计器创建表”,打开表设计器。
(2)在表设计器中,输入各个字段的名称,单击在“数据类型”中的下拉列表框按钮,选择各个字段的数据类型;并设置各个字段的相关属性。
(3)设置好每个字段后,单击工具栏中的“保存”按钮,在打开的“另存为”对话框中,输入表的名称,单击“确定”按钮。
(4)创建完表的结构后,单击菜单命令“视图”→“数据表视图”,打开表的数据表视图,输入数据。
四、通过输入数据创建表
1. 数据表的视图及其切换
数据表有两种视图:设计视图和数据表视图。
(1)设计视图
设计视图是用来编辑表结构的视图。在设计视图中,可以输入、编辑、修改数据表的字段名称、字段类型、字段说明,还可以设置字段的各种属性。
(2)数据表视图
数据表视图是用来浏览和编辑数据表数据内容的视图。在数据表视图中,不仅可对数据表进行数据的输入、编辑、修改等操作,还可以查找和替换数据,并且可以对数据表按某个字段、某种方式进行排序和筛选。
(3)数据表视图的切换
● 右键单击当前视图的标题栏,在快捷菜单中可选择切换到另一种视图。
● 单击Access 2003窗口的“视图”,在下拉菜单中选择切换到其他视图。
2. 通过输入数据创建表的步骤
用户可以先不创建表的结构,而是直接在数据表视图中输入表中数据来创建表。
(1)在数据库窗口中双击“通过输入数据创建表”,打开数据表视图。
(2)根据需要双击“字段1、字段2、字段3……”,将其名称修改为具体的字段名称,在字段名称下面直接输入数据。
(3)数据输入完成后,单击工具栏上的“保存”按钮,在“另存为”对话框中输入表的名称,在弹出的“创建主键”提示框中设置主键。
(4)打开已创建表的设计视图,根据实际需要对表的字段名称、字段类型、字段大小等属性进行修改和调整,完成后保存即可。
五、字段属性的设置
字段的属性除了包括基本的字段名称、字段类型、字段大小外,还包括字段标题、数据的显示格式、字段默认值、有效性规则、有效性文本及输入掩码等属性。在表的设计视图下面的“常规”和“查阅”选项卡中可完成字段属性的所有设置。
1. “字段大小”属性
“字段大小”属性可控制字段使用的空间大小。只能对“文本”或“数字”型的字段大小设置该属性。“文本”型字段的取值范围是0~255内的整数,默认值为50;要“数字”型字段的大小,可以通过单击“字段大小”属性框中的按钮,从下拉列表框中选取某一类型完成。
2. “格式”属性
“格式”属性用以确定数据的显示方式和打印方式。对于不同数据类型的字段,其格式的选择有所不同。“数字”、“自动编号”、“货币”类型的数据有常规数字、货币、欧元、固定、标准、百分比等显示格式;“日期/时间”类型的数据有常规日期、长日期、中日期、短日期、长时间等显示格式;“是/否”类型的数据有真/假、是/否、开/关等显示格式。
“OLE对象”类型的数据不能定义显示格式,“文本”、“备注”、“超链接”类型的数据没有特殊的显示格式。
“格式”属性只影响数据的显示方式,而原表中的数据本身并无变化。
3. “输入掩码”属性
“输入掩码”是一种输入格式,由字面显示字符(如括号、句号或连字符)和掩码字符(用于指定可以输入数据的位置及数据类型、字符数量等)构成。“输入掩码”可以在输入数据时保持统一的格式,还可以检查输入错误。使用“输入掩码向导”可以为“文本”和“日期”型字段设置“输入掩码”。
(1)常用的掩码字符及含义见表2-1。
表2-1 常用的掩码字符及含义
(2)常用的输入掩码
● 邮政编码:000000;
● 身份证号:000000000000000999;
● 长日期(中文):9999年99月99日;
● 短日期(中文):99年99月99日;
● 长时间:99:00:00
● 短时间:00:00。
4. “标题”属性
标题是字段的另一个名称,字段标题和字段名称可以相同,也可以不同。当未指定字段标题时,标题默认为字段名。
字段名称通常用于系统内部的引用,而字段标题通常用于显示。在表的数据视图中,显示的是字段标题;在窗体和报表中,相应字段的标签显示的也是字段标题。而在表的“设计”视图中,显示的是字段名称。
5. “默认值”属性
表中一些字段的数据内容相同的可以将其设置为默认值,以简化输入,提高输入速度。
6. “有效性规则”和“有效性文本”属性
“有效性规则”是用于限制输入数据时必须遵守的规则。利用“有效性规则”属性可限制字段的取值范围,确保输入数据的合理性,防止非法数据输入。“有效性规则”要用表达式来描述。
“有效性文本”与“有效性规则”配合使用。当输入的数据违反了“有效性规则”时,系统会用设置的“有效性文本”来提示。
六、在表中输入数据的注意事项
在表中输入数据时,需要注意以下几点。
(1)输入一个字段值后,按回车键或【Tab】键,输入下一个字段值。
(2)输入一条记录时,表会自动添加一条新的空记录,并在该记录最左方的“选择器”中显示出一个“*”号,表示这是一条新记录。
(3)对于选定准备输入的记录,其最左方的“选择器”中显示出一个箭头符号,表示该记录为当前记录。
(4)对于正在输入的记录,其最左方的“选择器”中显示出一个铅笔符号,表示该记录正处在输入或编辑状态中。
(5)输入“是否型”字段的值时,复选框选中表示“是”,未选中表示“否”,如果已设置该字段的默认值为“yes”,则复选框自动选中。
(6)OLE对象字段使用“插入对象”命令来输入,“插入对象”对话框中有 “新建”和“由文件创建”两个选项。选择“新建”,则创建一个文件插到表中,这个文件可以是位图、Excel图表、PowerPoint幻灯片、Word文档中的图片等;选择“由文件创建”,即可插入已经存在的文件中的对象。
第三章 表的基本操作
复习要求
1. 熟练掌握表的编辑修改方法;
2. 熟练掌握数据的查找与替换;
3. 掌握数据的排序与筛选;
4. 掌握修饰数据表的方法。
复习内容
一、编辑修改表的结构
1. 修改表的结构
在创建数据库的表之后,可以修改表的结构,包括修改字段名称、数据类型和字段属性等。修改表的结构还包括添加字段、删除字段、改变字段的顺序等。
2. 修改表的主关键字
如果需要改变数据表中原有的主关键字,则可以重新设置主关键字。操作步骤如下。
(1)打开表设计器。
(2)选择新的主关键字的字段名。
(3)在该字段上单击鼠标右键,从弹出的快捷菜单中选择“主键”命令,就可将该字段重新设置为主关键字。
因为一个数据表中只能有一个主关键字,所以一旦重新设置了新的主关键字,数据表中原有的主关键字将被取代。
如果该数据表已与别的数据表建立了关系,则当重新设置主关键字时,会弹出提示对话框,提示要先取消关系,然后才能重设主关键字。
二、修改表的记录数据
在表的数据视图中把光标定位在最后一行有4种方法。
(1)直接用鼠标在最后一行单击。
(2)右击记录行最左边的记录指示器,在弹出的快捷菜单中选择“新记录”命令。
(3)在工具栏上单击“新记录”按钮。
(4)选择菜单“插入→新记录”命令。
把光标定位在最后一行后,相当于增加了一条新记录,但记录的每个字段都为空,光标定位在第一个字段。
修改数据表的记录数据主要包括添加记录、删除记录和修改记录数据。修改数据表的记录数据是在数据表视图中进行的。
当数据表中有部分数据相同或相似时,可以利用复制和粘贴操作来简化输入,提高输入速度。操作步骤如下。
(1)选中要复制的字段。
(2)单击工具栏上的“复制”按钮或单击菜单“编辑”→“复制”命令。
(3)单击需要粘贴的字段。
(4)单击工具栏上的“粘贴”按钮或单击菜单“编辑”→“粘贴”命令,就能将所复制的字段内容粘贴到指定的字段处。
完成所有对表内容的编辑操作后,单击“编辑”→“粘贴”命令,保存数据。
如果其他表中包含相关记录,则不能删除该记录。为了避免删除错误,在删除记录前最好对表进行备份。
三、查找和替换表中的记录数据
1. “查找和替换”对话框中的选项
在“查找和替换”对话框中,“查找范围”列表框用来确定是在整个表还是在哪个字段中查找数据;“匹配”列表框用来确定匹配方式,包括“整个字段”、“字段的任何部分”和“字段开头”三种方式。“搜索”列表框用于确定搜索方式,包括“向上”、“向下”和“全部”三种方式。
2. 查找中使用的通配符
在查找中可以使用通配符进行更快捷的搜索。各通配符的含义如表3-1所示。
表3-1 通配符的含义
3. “记录导航”工具栏的使用
表的数据视图下面的状态栏上有“记录导航”工具栏。上面有一些工具按钮和文本框,这些按钮用来移动当前记录的位置,依次是“第一条记录”、“上一条记录”、“记录编号”、“下一条记录”、“最后一条记录”、“到新记录”。
四、按要求对表记录进行排序
1. 排序的概念
“排序”是将表中的记录按照一个字段或多个字段的值重新排列。若排列的字段值是从小到大排列的,则称为“升序”;若排序的字段值是从大到小排列的,则称为“降序”。对于不同的字段类型,有不同的排序规则。
2. 排序的规则
(1)数字按大小排序,升序时从小到大排序,降序时从大到小排序。
(2)英文字母按照26个字母的顺序排序(大小写视为相等),升序时按A→Z排序,降序时按Z→A排序。
(3)中文按照汉语拼音字母的顺序排序,升序时按a→z排序,降序时按z→a排序。
(4)日期和时间字段,是按日期值的顺序排序,升序排序按日期时间值从小到大排序,降序排序按日期时间值由大到小排序。
(5)数据类型为超级链接或OLE对象的字段不能排序。
(6)在“文本”类型的字段中保存的数字将作为字符串而不是数值来排序。因此,如果要以数值顺序来排序,则必须在较短的数字前面加上零,使得全部的文本字符串具有相同的长度。例如,要以升序排序文本字符串“1”、“2”、“10”、“20”,必须在仅有一位数的字符串前面加上零或者空格,才能到得正确的排序结果,如 “01”、“02”、“10”、“20”。
(7)在以升序顺序排列时,任何含有空字段(包含Null值)的记录将列在列表中的第一条。如果字段中同时包含Null值和空字符串,则包含Null值的字段将在第一条显示,紧接着是空字符串。
3. 排序后的处理
(1)排序后,排序方式与表一起保存。
(2)当对表进行排序后,在关闭数据库表时会出现提示对话框,询问是否保存对表的布局的更改,单击“是”按钮将保存更改结果。
五、对表记录数据进行各种筛选
1. 筛选的概念
筛选是指仅显示那些满足某种条件的数据记录,而把不满足条件的记录隐藏起来的一种操作。
2. 筛选方式
Access 2003提供了5种筛选方式:按选定内容筛选、按窗体筛选、按筛选目标筛选、内容排除筛选和高级筛选/排序。
(1)按选定内容筛选。
“按选定内容筛选”是以数据表中的某个字段值为筛选条件,将满足条件的值筛选出来。
(2)按窗体筛选。
如果“按选定内容筛选”不容易找到要筛选的记录,如果希望设置多个筛选条件时,可以使用“按窗体筛选”。按窗体筛选记录时,Access将记录表变成一个空白的视图窗体,每个字段是一个列表框。用户通过单击相关的字段列表框选取某个字段值作为筛选的条件。对于多个筛选条件的选取,还可以单击窗体底部的“或”标签确定字段之间的关系。
(3)按筛选目标筛选。
“按筛选目标筛选”是通过在窗体或数据表中输入筛选条件(值或条件表达式)来筛选满足条件(包含该值或满足该条件表达式)的所有记录。
(4)内容排除筛选。
“内容排除筛选”是指在数据表中将满足条件的记录筛选出去,而保留那些不满足条件的记录。
(5)高级筛选/排序。
“高级筛选/排序”功能适合于较为复杂的筛选需求。用户可以为筛选指定筛选条件和准则,同时还可以将筛选出来的结果排序。
六、设置表的格式
1. 设置表数据视图格式的意义
如果不设置表中数据的视图格式,则表数据视图的格式是Access 2003默认的格式,这种默认格式往往不能令人满意。因此在建立了数据表以后,往往需要调整表的外观。设置表数据视图格式包括设置数据表的样式、设置字体及字号、改变行高和列宽、调整字段的排列次序和背景色彩等。
2. 调整表的列高和行宽
调整表的列高和行宽有手动调节和设定参数两种方法。
(1)手动调节:将鼠标移动到表中两个字段的列定位器(或两条记录的行定位器)的交界处,待鼠标变成“十”字形状后,按下鼠标左键,向左右(上下)拖曳至所需要的列宽度(行高度)。
(2)设定参数:单击菜单命令“格式”→“行高”(或“列宽”),弹出“行高”(或“列宽”)对话框,在对话框中输入行高(或列宽)的参数,单击“确定”按钮。
可以通过双击字段的右边界,改变列的宽度大小,并使之达到最佳设置,这时列的宽度与字段中最长的数据的宽度相同。
重新设定列的宽窄不会改变表中字段的“字段大小”属性所允许的字符长度,它只是简单地改变字段列在表数据视图中显示区域的宽度。
3. 隐藏列和取消隐藏列
当一个数据表的字段较多,使得屏幕的宽度无法全部显示表中所有的字段时,可以将那些不需要显示的列暂时隐藏起来。
隐藏不是删除,只是在屏幕上不显示出来而已。当需要再显示时,还可以取消隐藏恢复显示。
隐藏列的方法是:选中要隐藏的列,单击菜单命令“格式”→“隐藏列”,即可以隐藏所选择的列。
取消隐藏列的方法是:单击菜单命令“格式”→“取消隐藏列”,在打开的“取消隐藏列”对话框中选中要取消隐藏的列的复选框,单击“关闭”按钮。
在使用鼠标拖动来改变列宽时,当拖动列右边界的分隔线超过左边界时,也可以隐藏该列。
4. 冻结列和取消冻结列
对于较宽的数据表而言,在屏幕上无法显示出全部字段内容,给查看和输入数据带来不便。此时可以利用“冻结列”的功能将表中的一部分重要的字段固定在屏幕上。
冻结列的方法是:选定要冻结的列,单击菜单命令“格式”→“冻结列”,则选中的列就被“冻结”在表格的最左边。
取消冻结列的方法是:单击菜单命令“格式”→“取消对所有列的冻结”。
5. 设置数据表样式
设置表数据视图样式的目的是为了使表格更加多样化,更加美观。数据表的样式包括单元格效果、网格线、背景、边框、字体、字形、字号和字的颜色等。
第四章 查询的创建与应用
复习要求
1. 掌握查询的概念和查询的类型;
2. 熟练掌握表间关系的创建和使用;
3. 熟练掌握使用查询向导创建查询的方法;
4. 熟练掌握查询设计视图的使用方法;
5. 熟练掌握在查询设计网格中添加字段及设置查询条件的方法;
6. 熟练掌握创建选择查询、参数查询、交叉表查询和操作查询。
复习内容
一、定义数据库的表间的关系
1. 关系的概念
关系是指在两个表的字段之间所建立的联系。可以通过关系使数据库表间的数据合并起来,形成“有用”的数据,以便于以后应用查询、窗体、报表。
2. 关系类型
表间关系有三种类型:一对一关系、一对多关系、多对多关系。
(1)一对一关系:若A表中的每一条记录只能与B表中的一条记录相匹配,同时B表中的每一条记录也只能与A表中的一条记录相匹配,则称A表与B表为一对一关系。这种关系类型不常用,因为大多数与此相关的信息都在一个表中。
(2)一对多关系:若A表中的一条记录能与B表中的多条记录相匹配,但B表中的一条记录仅与A表中的一条记录相匹配,则称A表与B表为一对多关系。其中“一”方的表称为父表,“多”方的表称为子表。
(3)多对多关系:若A表中的一条记录能与B表中的多条记录相匹配,同时B表中的一条记录也能与A表中的多条记录相匹配,则称A表与B表为多对多关系。
多对多关系的两个表,实际上是与第三个表的两个一对多关系。因此在实际工作中,用得最多的是一对多关系。
建立表间关系的类型取决于两个表中相关字段的定义。如果两个表中的相关字段都是主键,则创建一对一关系;如果仅有一个表中的相关字段是主键,则创建一对多关系。
3. 参照完整性
若已为两个表建立了一对多的表间关系,并实施了参照完整性,如果再向子表中添加或修改数据时,子表中联系字段的数据与父表主键中的数据不匹配,就会弹出错误提示信息。
反之,如果子表中出现父表主键的数据,就不能删除主表中与之联系的记录。否则会弹出错误提示信息。
由于设置参照完整性能确保相关表中各记录之间关系的有效性,并且确保不会意外删除或更改相关的数据,所以在建立表间关系时,一般应同时“实施参照完整性”。
对于实施参照完整性的关系,还可以选择是否级联更新相关字段和级联删除相关记录。
如果选择“级联更新相关字段”,则更改主表的主键值时,自动更新相关表中的对应数值:否则仅更新主表中与子表无关的主键的值。
如果选择“级联删除相关记录”,则删除主表中的记录时,自动删除相关表中的有关记录;否则,仅删除主表中与子表记录无关的记录。
在“关系”窗口中,如果表间关系显示为,表示在定义表间关系时选择“实施参照完整性”;如果表间关系显示为,则表示在定义表间关系时没有选择“实施参照完整性”。
二、利用查询向导创建查询
1. 查询的类型
根据对数据源操作方式和操作结果的不同,Access 2003中的查询可以分为五种类型:选择查询、参数查询、交叉表查询、操作查询和SQL查询。
(1)选择查询:最基本、最常用的查询方式。它根据指定的查询条件,从一个或多个表获取满足条件的数据,并且按指定顺序显示数据。选择查询还可以将记录进行分组,并计算总和、计数、平均值及不同类型的总计。
(2)参数查询:一种交互式的查询方式。它可以提示用户输入查询信息,然后根据用户输入的查询条件来检索记录。例如,可以提示输入两个日期,然后检索在这两个日期之间的所有记录。若将参数查询的结果作为窗体、报表和数据访问页的数据源,则可以方便地显示或打印出查询的信息。
(3)交叉表查询:它将来源于某个表中的字段进行分组,一组列在数据表的左侧,一组列在数据表的上部,然后可以在数据表行与列的交叉处显示表中某个字段的各种计算值。如计算数据的平均值、计数或总和。
(4)操作查询:不仅可以进行查询,而且可以对该查询所基于的表中的多条记录进行添加、编辑和删除等修改操作。
(5)SQL查询:使用SQL语句创建的查询。前面介绍的几种查询,系统在执行时自动将其转换为SQL语句执行。用户也可以使用 “SQL视图”直接书写、查看和编辑SQL语句。有一些特定查询(如联合查询、传递查询、数据定义查询、子查询)必须直接在“SQL视图”中创建SQL语句。关于SQL查询将在第5章中详细介绍。
2. 查询的视图
查询的视图有三种方式,分别是数据表视图、设计视图和SQL视图。
(1)查询的数据表视图
查询的数据表视图是以行和列的格式显示查询结果数据的窗口。
在数据库窗口选择查询对象,单击数据库窗口的“打开”工具按钮,则以数据表视图的形式打开当前查询。
(2)查询的设计视图
查询的设计视图是用来设计查询的窗口。使用查询设计视图不仅可以创建新的查询,还可以对已存在的查询进行修改和编辑。
在数据库窗口选择查询对象,单击数据库窗口的“设计”工具按钮,则以设计视图的方式打开当前查询。
查询设计视图由上下两部分构成,上半部分是创建的查询所基于的全部表和查询,称为查询基表,用户可以向其中添加或删除表和查询。具有关系的表之间带有连线,连线上的标记是两个表之间的关系,用户可添加、删除和编辑关系。
查询设计视图的下半部分为查询设计窗口,称为“设计网格”。利用设计网格可以设置查询字段、来源表、排序顺序和条件等。
(3)查询的SQL视图
SQL视图是一个用于显示当前查询的SQL语句窗口,用户也可以使用SQL视图建立一个SQL特定查询,如联合查询、传递查询或数据定义查询,也可对当前的查询进行修改。
当查询以数据表视图或设计视图的方式打开后,选择“视图”菜单的“SQL视图”选项,则打开当前查询的SQL视图,视图中显示当前查询的SQL语句。
3. 总计查询的计算类型
在总计查询时,可以使用以下两种计算类型。
(1)对所有记录计算总计:查询结果是对所有记录的统计,最终的统计结果只有一行。
(2)对记录进行分组计算总计:对记录按某类别进行分组,查询结果是对每一组中的记录的统计。
4. 计算的总计值
计算的总计值可以是汇总值、平均值、计数值、最小值和最大值。
(1)汇总值:分别求取每组记录或所有记录的指定字段的总和。
(2)平均值:分别求取每组记录或所有记录的指定字段的平均值。
(3)计数值:求取每组记录或所有记录的记录条数。
(4)最小值:分别求取每组记录或所有记录的指定字段的最小值。
(5)最大值:分别求取每组记录或所有记录的指定字段的最大值。
总计查询也可以使用“简单查询向导”来创建。
创建“总计”查询时应遵循以下规则。
(1)如果要对记录组进行分类汇总,则一定要将表示该类别的字段设置为“选定字段”。
(2)如果该查询对所有的记录进行汇总统计,则不用选择类别字段。这时统计结果只有一条记录,是对所有记录进行汇总的结果。
(3)汇总计算的字段必须是数值型字段。
三、利用设计视图创建查询
1. 利用“设计视图”修改查询
无论利用“查询向导”还是利用“设计视图”创建查询后,都可以对查询进行修改。操作方法为:打开数据库,在“查询”对象列表中选中待修改的查询,单击工具条的“设计”按钮,即可以打开该查询的“设计视图”进行修改。
2. 在设计视图中添加表之间的连接
在设计视图中添加表或查询时,如果所添加的表或查询之间已经建立了联系,则在添加表或查询的同时也同时自动添加连接,否则应手工添加表之间的连接。手工添加表之间的连接的方法为:
在查询设计视图中,从表或查询的字段列表中将一个字段拖到另一个表或查询中的相等字段上(与在“关系”窗口中建立表间关系的操作一样)。
如果要删除两个表之间的连接,则在两表之间的连线上单击鼠标,连线将变粗,然后再在连线上单击鼠标右键,在弹出的菜单中选择“删除”命令即可。
3. 从查询中删除表和查询
如果已不再需要当前查询中的某个表或查询,可以将其从查询中删除。操作方法是:在查询设计视图的上部,右键单击要删除的表或查询,在弹出菜单中选择“删除”命令。也可选定表或查询后按【Delete】键删除。
一旦从当前查询中删除查询中的表或查询,则相应的设计网格的字段也将从查询中删除,但是被删除的表或查询并不会从数据库中删除,而只是当前查询中不再包含该表或查询。
4. 查询设计视图中字段的操作
对查询中字段的操作,如添加字段、删除字段、更改字段、排序记录、显示和隐藏字段等,需要在查询设计视图下半部的“设计网格”中进行。
(1)添加和删除字段
如果在设计网格中添加字段,可采用两种方法:一是将视图上半部表的字段列表中的字段拖动至设计网格的列中;二是双击字段列表中的字段。
如果不再需要设计网格中的某一列,则可将该列删除。操作方法有两种:一是选中某列,单击“编辑”菜单中的“删除列”;二是将鼠标放在该列的最顶部,单击鼠标选中整列,按【Delete】键。
(2)插入和移动字段
如果要在列之间插入一列也可采用两种方法:一是选中某列,单击“插入”菜单中的“列”,则在当前列前插入一空列;二是将鼠标放在某列的最顶部,单击鼠标选中整列,按【Insert】键。空列插入后,在设计网格中设置该列的字段即可。
要改变字段的排列次序,可以进行移动字段的操作。改变字段的排列次序后,查询“数据表”视图中的显示次序也将改变。移动字段的操作步骤是:
① 将鼠标放在该列的最顶部,单击鼠标选中整列;
② 拖动鼠标可将该列拖至任意位置。
(3)更改字段显示标题
默认情况下,查询以源表的字段标题作为查询结果的标题。我们可以在查询中对字段标题进行重命名,以便更准确地描述查询结果中的数据。这在定义新计算字段或计算已有字段的总和、计数和其他类型的总计时特别有用。
(4)改变设计网格的列宽
如果查询设计视图中网格的列宽不足以显示相应的内容,则可以改变列宽。操作方法为:首先将鼠标指针移到要更改列宽的列选定器的右边框,当指针变为双向箭头时,左右拖动鼠标即可改变列宽。
(5)显示或隐藏字段
对于设计网格中的每个字段,都可以控制其是否显示在查询的数据表视图中。操作方法是:选中设计网格的某字段的“显示”行中的复选框,则该字段在查询运行时将显示,否则不显示该字段。
所有隐藏的字段在查询关闭时将会自动移动到设计网格的最右边。隐藏的字段虽然不显示在数据表视图中,但在该查询中仍包含了这些字段。
(6)为查询添加条件和删除条件
在查询中可以通过使用条件来检索满足特定条件的记录。为字段添加条件的操作步骤如下:
① 在设计视图打开查询;
② 单击设计网格中的某列的“条件”单元格;
③ 用键盘输入或使用“表达式生成器”输入条件表达式。
条件表达式的书写方法将在以后的章节中介绍。如果要删除设计网格中某列的条件,则选中条件,按【Delete】键即可。
5. 运行、保存和删除查询
(1)运行查询。
在查询设计视图中完成查询的设置以后,运行查询即可显示查询结果。运行查询有以下两种方法。
方法1:
① 单击菜单命令“视图→“数据表视图”,转换到数据表视图;
② 单击菜单命令“查询”→“运行”运行查询;
方法2:
① 在设计视图窗口的标题栏上单击鼠标右键,在弹出的菜单中选择“数据表视图”;
② 在工具栏上单击“运行”按钮。
(2)保存查询。
如果是新创建的查询,则在查询设计视图设置完成以后,选择菜单命令“文件”→“保存”或者按【Ctrl+S】组合键,可打开“另存为”对话框,默认的查询名为“查询1”,在保存对话框中输入新的查询名称后,单击“确定”按钮,则新建的查询将保存到数据库中。
如果是在设计视图中打开的已创建好的查询进行了修改编辑,则单击菜单“文件”→“保存”命令更新查询。如果修改查询后,关闭设计视图窗口时没有保存,则显示提示保存的对话框。
(3)删除查询。
删除查询的方法有两种。
① 在数据库窗口中,选择要删除的查询,单击“删除”按钮,即可将当前查询删除。
② 在数据库窗口中,在要删除的查询上单击鼠标右键;在弹出的快捷菜单上选择“删除”命令,也可将当前查询删除。
四、创建参数查询
1. 理解查询条件
在创建查询时,有时需要对查询记录中的某个或多个字段进行限制,这就需要将这些限制条件添加到字段上,这样只有完全满足限制条件的记录才能显示出来。
一个字段可以有多条限制规则,每条规则之间可以用逻辑符号来连接。
在输入条件时要用一些特定的运算符、数据、字段名和函数,将这些运算符、数据、函数及字段名等组合在一起称为表达式。输入的条件称为条件表达式。
在查询中通常有两种情况需要书写表达式。
(1)用表达式表示一个查询条件。
(2)在查询中添加新的计算字段。
每个表达式都有一个计算结果,这个结果称为表达式的返回值。表示查询条件的表达式的返回值只有两种:True(真)或者False(假)。
2. 表达式中的算术运算符
算术运算符只能对数值型数据进行运算。表4-1列出了可以在Access表达式中使用的算术运算符。
表4-1 算术运算符
说明:
(1)“\”:整除符号。当使用整数除的时候,带有小数部分的操作数将四舍五入为整数,但在结果中小数部分将被截断。
(2)“Mod”:该运算符返回的是整除的余数。例如:13 Mod 3将返回1。
(3)“^”:指数运算符,也称乘方运算符。例如:2^4,返回16(2*2*2*2)。
这三个运算符在商业应用中很少会用到,但却常常用于Access VBA程序代码中。
3. 使用关系运算符表示单个条件
关系运算符也叫比较运算符,使用关系运算符可以构建关系表达式,表示单个条件。
关系运算符用于比较两个操作数的值,并根据两个操作数和运算符之间的关系返回一个逻辑值(True或False)。表4-2列出了在Access中可以使用的比较运算符。
表4-2 比较运算符
4. 使用逻辑运算符表示多个条件
逻辑运算符通常用于将两个或者多个关系表达式连接起来,表示多个条件,其结果也是一个逻辑值(True或False)。
表4-3 逻辑运算符
在为查询设置多个条件时,有两种写法。
(1)将多个条件写在设计网格的同一行,表示“And”运算;将多个条件写在不同行,表示“Or”运算。
(2)直接在“条件”行中书写逻辑表示式。
5. 使用其他运算符表示条件
除了上面所述的使用关系运算和逻辑运算来表示条件之外,还可以使用Access提供的功能更强的运算符表示条件。表4-4列出了在Access查询中使用的4个其他运算符。
表4-4 其他运算符
例如:逻辑运算 [单价]>=10 and [单价]<=20可改写为:
[单价] Between 10 and 20
两种写法等价。
6. 使用常用函数
在查询表达式中还可以使用函数。表4-5中给出了一些常用函数。
表4-5 常用函数
五、创建汇总计算查询
汇总计算查询是使用函数Sum、Avg、Count、Max和Min(见表4-6)计算出所有记录或记录组的总和、平均值、计数、最大值和最小值。汇总计算查询可以使用向导来创建,也可以使用设计视图创建。
表4-6 常用函数及功能表
六、利用向导创建交叉表查询
交叉表查询是查询的另一种类型。交叉表查询显示来源于表或查询中某个字段总计值(如合计、平均、计数等),并将它们分组,一组列在数据表的左侧,称为行标题;一组列在数据表的上部,成为列标题。交叉表查询增加了数据的可视性,便于数据的统计与查看。
创建交叉表查询可以利用“创建交叉表查询向导”和“设计视图”两种方法。利用向导创建交叉表查询方法简单、易掌握,但只能针对一个表或查询创建交叉表查询,且不能制定限制条件。若要查询多个表,就必须先建立一个含有全部所需字段的查询,然后再用这个查询来创建交叉表查询。利用“设计视图”创建交叉表查询更加灵活,查询字段可以来自多个表,但操作较为繁杂。
七、利用操作查询更新信息
操作查询是指仅在一个操作中更改许多记录的查询,它使用户不但可以利用查询对数据库中的数据进行简单的检索、显示及统计,而且可以根据需要对数据库进行一定的修改。
操作查询共有四种类型:①删除查询,其作用是从现有表中删除记录;②更新查询,作用是替换现有数据;③追加查询,作用是在现有表中添加新记录;④生成表查询,作用是创建新表。
操作查询与选择查询、交叉表及参数查询有所不同。选择查询、交叉表及参数查询只是根据要求从表中选择数据,并不对表中的数据进行修改;而操作查询除了从表中选择数据外,还对表中的数据进行修改。由于运行操作查询时,可能会对数据库中的表做大量的修改,因此,为避免因误操作而引起不必要的改变,Access在数据库窗口中的每个操作查询图标之后显示一个感叹号,以引起用户注意。
创建和使用操作查询包括以下4大基本步骤。
(1)设计一个简单的选择查询,选取要操作或要更新的字段。
(2)将这个选择查询转换为具体的操作查询类型,完成相应的步骤和设置。
(3)通过单击工具栏上的“视图”按钮,预览操作查询所选择的记录。单击“确定”按钮后,再单击“运行”按钮执行操作查询。
(4)到相应表中查看操作结果。
操作查询会修改数据,而且在多数情况下,这种修改是不能恢复的,这就意味着操作查询具有破坏数据的能力。如果希望数据更安全一些,就应该先对相应的表进行备份,然后再进行操作查询。
第五章 使用结构化查询语言SQL
复习要求
1. 了解SQL语言的概念;
2. 掌握简单查询的设计及使用;
3. 掌握连接查询的设计;
4. 掌握嵌套查询的设计;
5. 掌握统计查询的设计;
6. 掌握更新查询的设计;
7. 掌握插入查询的设计;
8. 掌握删除查询的设计。
复习内容
一、创建简单查询
1. 认识SQL语句
SQL语言是一个完整的结构化查询语言体系,通常包含4 个部分:数据定义语言(CREATE、ALTER、DROP)、数据操纵语言(INSERT、UPDATE、DELETE)、数据查询语言(SELECT)和数据控制语言(COMMIT、ROLLBACK),因此可以完成数据库操作中的全部工作。
(1)数据定义:指创建数据库,对于关系数据库而言,就是建立表结构和编辑表结构。
(2)数据操纵:指对数据库中的具体数据进行增、删、改和更新等操作。
(3)数据查询:指按用户要求从数据库中检索数据,并将查询结果以表格的形式返回。
(4)数据控制:指通过对数据库各种权限的授予或回收来管理数据库系统。这些权限包括对基本表的修改、插入、删除、更新、建立索引、查询的所有权限。
SQL语言是一种高度非过程化的语言,它不是一步步地告诉计算机“如何去做”,而只描述用户“要做什么”,即SQL语言将要求交给系统,系统自动完成全部工作。
SQL语言非常简洁。虽然SQL语言功能很强,但它只有为数不多的几条命令,表5-1列出了按语句的功能分类的命令动词。此外,SQL的语法也非常简单,学习和掌握起来比较容易。
表5-1 SQL命令动词
SQL语言既可以直接以命令方式交互使用,也可以嵌入到程序设计语言中以程序方式使用。现在很多数据库应用开发工具都将SQL语言直接融入自身的语言之中,使用起来更方便,Access就是如此。
2. SELECT语句的基本格式
SELECT语句主要用于查询和统计,是应用最为广泛的一种SQL语句,它不但可以建立简单查询,还可以实现条件查询、分组统计、多表链接查询等功能。
SELECT数据查询语句的动词是SELECT。SELECT语句的基本形式由SELECT-FROM-WHERE查询块组成,多个查询块可以嵌套执行。
SELECT语句基本的语法结构如下:
SELECT [表名.]字段名列表 FROM <表名或查询名>[<表名或查询名>]… [WHERE <条件表达式>] [ORDER BY <列名>[ASC|DESC]]
其中,方括号([ ])内的内容是可选的,尖括号(< >)内的内容是必须要有的。
SELECT语句中各子句的意义如下。
(1)SELECT子句:用于指定要查询的数据字段,只有指定的字段才能在查询中出现。如果希望检索到表中的所有字段信息,那么可以使用星号(*)来代替列出的所有字段的名称,而列出的字段顺序与表定义的字段顺序相同。
(2)FROM子句:用于指出要查询的数据来自哪个或哪些表(也可以是视图),可以对单个表或多个表进行查询。
(3)WHERE子句:用于给出查询的条件,只有与这些选择条件匹配的记录才能出现在查询结果中。在WHERE后可以接条件表达式,还可以使用IN、BETWEEN、LIKE表示字段的取值范围。其中:
● IN在WHERE子句中的作用是:确定WHERE后的表达式的值是否等于指定列表中的几个值中的任何一个。例如,WHERE职称IN("高级","中级"),表示“职称”字段的值如果是“高级”或“中级”则满足查询条件。
● BETWEE在WHERE子句中的作用是:条件可以用BETWEEN…AND…表示在两者之间,NOT BETWEEN…AND…表示不在其间。
● LIKE在WHERE子句中的作用是:利用“*”、“?”通配符实现模糊查询。其中,"*"匹配任意数量的字符,例如,姓名LIKE"张*"表示所有以“张”开头的姓名满足查询条件;"?"匹配任意单个字符,例如,姓名LIKE "张?"表示以“张”开头的两个字的姓名满足查询条件。
(4)ORDER BY子句:用于对查询结果按“列名”进行排序,ASC表示升序,DESC表示降序,默认为ASC升序排序。
SELECT语句不分大小写,例如,SELECT可为select,FROM可为from。
SELECT语句中的所有标点符号(包括空格)必须采用半角西文符号,如果采用了中文符号,将会弹出要求重新输入或提示出错的对话框,必须将其改为半角西文符号,才能正确地执行SELECT语句。
二、创建连接查询
1. 连接的类型
根据表与表之间连接后所获得的结果记录集的不同,连接可分为内连接、左连接和右连接三种类型,重点是内连接查询。
2. 连接查询的基本格式
在SELECT语句中使用连接查询的基本格式如下:
SELECT [表名或别名.]字段名列表 FROM表名1 AS别名1 INNER | LEFT | RIGHT JOIN表名2 AS别名2 ON表名1.字段=表名2.字段
其中,“|”表示必须选择INNER、LEFT、RIGHT中的一个。
如果连接的表多于两个,则需要使用嵌套连接,其格式为:
SELECT [表名或别名.]字段名列表 FROM表名1 AS别名1 INNER JOIN (表名2 AS别名2 INNER JOIN表名3 AS别名3 ON表 名2.字段=表名3.字段) ON表名1.字段=表名2.字段
在上述格式中,如果结果集所列字段名在两个表中是唯一的,则[表名.]可以省略,但是如果两个表中存在同名字段,为防止混淆,需要指明所列字段来自于哪个表。
如果表名太长或不便于记忆,则可以利用AS为表定义别名,并在字段名前用别名识别。
三、使用嵌套子查询
一个查询语句可以嵌套有另一个查询语句,最多可以嵌套32层。其中外部查询为主查询,内部查询为子查询。这种查询方式通常是最自然的表达方法,非常贴近用户的需求描述,实现更加简便。
子查询通常作为主查询的WHERE子句的一部分,用于替代WHERE子句中的条件表达式。根据子查询返回记录的行数的不同,可以使用不同的操作符,如表5-2所示。
表5-2 子查询操作符
四、使用SQL语言实现计算查询
在SELECT语句中利用SQL提供的一组汇聚函数,可对分组数据集中的数据集合进行计算。
使用SELECT语句进行分组统计的基本格式为:
SELECT [表名.]字段名列表 [AS列标题] FROM <表名> GROUP BY分组字段列表 [HAVING查询条件]。
其中,GROUP BY子句指定分组字段。HAVING子句指定分组的搜索条件,通常与GROUP BY子句一起使用。
在分组查询中经常使用SUM( )、AVG( )、COUNT( )、MAX( )、MIN( )等汇聚函数计算每组的汇总值。
五、使用SQL语言实现更新查询
UPDATE语句的基本格式为
UPDATE表名SET字段名=表达式[,字段名=表达式,…] [WHERE更新条件]
UPDATE语句中各子句的意义如下。
(1)UPDATE:指定更新的表名。UPDATE语句每次只能更新一个表中的数据。
(2)SET:指定要更新的字段及该字段的新值。其中新值可以是固定值,也可以是表达式,但是要确保和该字段的数据类型一致。
SET子句可以同时指定多个字段更新,每个字段之间用逗号分隔。
(3)WHERE:指定更新条件。对于满足更新条件的所有记录,SET子句中的字段将按给定的新值更新。
当WHERE子句中更新条件较多时,使用逻辑运算符AND、OR、NOT或LIKE、IN、BETWEEN的组合,也可以使用嵌套子查询设置更新条件。
如果没有指定任何WHERE子句,那么表中所有记录都被更新。
六、使用SQL语言删除信息
DELETE语句的基本格式如下:
DELETE FROM表名 [WHERE删除条件]
DELETE语句中各子句的意义如下。
(1)DELETE FROM:指定删除记录的表名。DELETE语句每次只能删除一个表中的记录。
(2)WHERE:指定删除条件。对于符合条件的记录,DELETE语句将从表中删除。如果没有指定任何WHERE子句,则DELETE将删除所有记录。
当数据库表间存在关系且关系设置了“实施参照完整性”检验,则在删除一对多关系的主表记录且从表存在相关记录时,Access 2003将拒绝执行删除命令,同时弹出错误提示。
七、使用SQL语言实现插入查询
向数据表中追加记录,INSERT语句的基本格式如下:
INSERT INTO表名 [(字段列表)] VALUES(值列表)
其中,字段列表和值列表可以包含多个,并在字段间或值间用逗号分隔。
INSERT语句中各子句的意义如下。
(1)INSERT INTO:指定插入记录的表名称。一条INSERT语句一次只能向一个表插入数据。
(2)VALUES:指定各字段值。这些值可以是固定值,也可以是表达式或函数运算的结果。
如果没有指定(字段列表),则表示向表中所有字段指定值,这时,VALUES子句中(值列表)的值的个数、顺序、数据类型要和表中字段的个数、顺序、数据类型保持一致。
如果只需要为表中的部分字段提供值,则需要指定(字段列表)。同样,VALUES子句中(值列表)的值的个数、顺序、数据类型要和(字段列表)中字段的个数、顺序、数据类型相同。没有指定的字段则按该字段的“默认值”添加数据。
第六章 窗体的创建与应用
复习要求
1. 掌握窗体的作用、布局和分类;
2. 熟练掌握创建、设计和美化窗体的方法;
3. 熟练掌握常用控件的功能;
4. 熟练掌握使用控件设计窗体的方法;
5. 熟练掌握使用窗体操作数据的方法;
6. 掌握主—子窗体的设计方法。
复习内容
一、认识“罗斯文示例数据库”中的窗体与窗体视图
1. 窗体的分类
按照窗体的功能来分,窗体可以分为数据窗体、切换面板窗体和自定义对话框三种类型。
数据窗体主要用于输入、显示和修改表或查询中的数据。
切换面板窗体一般是数据库的主控窗体,用来接受和执行用户的操作请求、打开其他的窗体或报表,以及操作和控制程序的运行。
自定义对话框用于定义各种信息提示窗口,如警告、提示信息、要求用户回答等。
2. 窗体视图的种类
Access 2003中的窗体共有五种视图:设计视图、窗体视图、数据表视图、数据透视表视图和数据透视图视图。以上五种视图可以使用工具栏上的“视图”按钮相互切换。之所以在展示窗体视图时采用了不同的窗体,而没有采用展示一个窗体的五种视图,主要是为了方便说明五种视图显示数据的特点。
(1)设计视图:是在进行窗体设计时,看到的窗体情况。在窗体的设计视图中,可以对窗体中的内容进行修改。
(2)窗体视图:用于查看窗体的效果。
(3)数据表视图:用于查看来自窗体的数据。
(4)数据透视表视图:用于从数据源的选定字段中汇总信息。通过使用数据透视表视图,可以动态更改表的布局,以不同的方式查看和分析数据。
(5)数据透视图视图:是以图表方式显示窗体中的数据。
普通窗体通常在设计视图、窗体视图和数据表视图之间切换。如果切换到数据透视表视图或数据透视图视图则没有数据显示,除非设计的窗体就是数据透视表视图或数据透视图视图。
二、使用“窗体向导”创建窗体
1. 创建窗体向导的分类
Access 2003提供了6种创建窗体的向导:“窗体向导”、“自动创建窗体:纵栏式”、“自动创建窗体:表格式”、“自动创建窗体:数据表”、“图表向导”和“数据透视表向导”。
(1)窗体向导:可以创建任何形式的数据窗体,包括其他向导创建的窗体。其特点是向导步骤较多。
(2)自动创建窗体:可以创建数据窗体的形式有纵栏式、表格式和数据表。其特点是步骤少,建立窗体简单。
(3)图表向导:窗体中如果含有图表,则使用该向导提供创建窗体的详细步骤。
(4)数据透视表向导:建立数据透视表很方便。
2. 可用字段与选定字段的区别
可用字段是选择数据表中的所有字段,选定字段是要在窗体上显示出来的字段数据。
3. 导航按钮
在创建的窗体中,窗体底部有一些按钮和信息提示,这就是窗体的导航按钮。其作用就是通过这些按钮,可以选择不同的记录并显示在窗体上。
三、使用“自动创建窗体”创建窗体
1. 创建纵栏式自动窗体的方法
创建纵栏式自动窗体有两种方法,一是使用“新建窗体”对话框,二是使用“插入”菜单中的“自动窗体”菜单命令。
2. 纵栏式、表格式和数据表式窗体的区别
纵栏式窗体用于每次显示一条记录信息,可以通过“导航按钮”来显示任一条记录数据。表格式和数据表式窗体一次可以显示多条记录信息,在窗体上显示表格类数据较为方便,窗体上也有“导航按钮”。
3. 数据表式窗体
数据表式窗体就是在表对象中,打开数据表所显示数据的窗体。
四、使用“数据透视表向导”创建窗体
数据透视表是一种交互式的表,可以进行用户选定的运算。数据透视表视图是用于汇总分析数据表或窗体中数据的视图,通过它可以对数据库中的数据进行行列合计及数据分析。
五、使用“图表向导”创建窗体
1. 图表的类型
图表有柱形图、条形图、饼图等类型,根据显示数据的需要,可以选择合适的图表类型。
2. 系列
在Access 2003中,系列是显示一组数据的序列,也就是图表中显示的图例。
3. 汇总
汇总方式有求和、平均值、计数等。例如,双击“求和单价”,打开“汇总”对话框,可以选择合适的汇总方式。
六、使用窗体设计视图创建窗体
1. 窗体设计窗口和工具箱
在窗体设计视图中,窗体由上而下被分成五个节:窗体页眉、页面页眉、主体、页面页脚和窗体页脚。其中,“页面页眉”和“页面页脚”节中的内容在打印时才会显示。
一般情况下,新建的窗体只包含“主体”部分,如果需要其他部分,可以在窗体主体节的标签上右击鼠标,在弹出的快捷菜单中选择“页面页眉/页脚”或“窗体页眉/页脚”命令即可添加对应部分。
窗体中各节的尺寸都可以通过鼠标来调整,将鼠标移动到需要改变大小的节的边界,当鼠标形状变为“”时,按下鼠标左键,拖动鼠标到合适位置即可。
在窗体视图中有很多网格线,还有标尺。这些网格和标尺是为了在窗体中放置各种控件而用来定位的。若要将网格和标尺去掉,可以将鼠标移到窗体设计视图中主体节的标签上,单击鼠标右键,在弹出的快捷菜单上单击“标尺”或“网格”选项。如果再一次单击,就会在视图上再次出现标尺或网格。
Access 2003的工具箱只有在窗体或报表的设计模式下才会出现,主要用于向窗体或报表添加控件对象。既可以通过菜单“视图”→“工具箱”命令切换显示或隐藏工具箱;也可以单击工具栏上的“工具箱”按钮;或者在设计窗口中单击鼠标右键,在弹出的快捷菜单中选择“工具箱”命令显示或隐藏工具箱。在工具箱上有17种控件和3种其他按钮。
2. 工具箱按钮的名称和功能
Access 2003工具箱按钮的名称和功能如表6-1所示。
表6-1 工具箱中按钮的名称和功能
3. 设置窗体的属性
窗体和窗体上的控件都具有属性,这些属性用于设置窗体和控件的大小、位置等,不同控件的属性也不太一样。右击对象,在弹出的快捷菜单中选择“属性”命令,可以打开该对象的属性对话框。鼠标双击左上角的“窗体选定器”,可以打开窗体的属性对话框。
窗体“属性”对话框有五个选项卡:格式、数据、事件、其他和全部。其中“全部”选项卡包括其他四个选项卡中的所有属性。
4. 窗体中的控件
控件是窗体、报表或数据访问页中用于显示数据、执行操作、装饰窗体或报表的对象。控件可以是绑定、未绑定或计算型的。
● 绑定控件:与表或查询中的字段相连,可用于显示、输入及更新数据库中的字段。
● 未绑定控件:没有数据来源,一般用于修饰。
● 计算控件:以表达式作为数据来源。
打开工具箱后,鼠标指向工具箱的任何控件按钮都会出现该控件名称的提示。向窗体添加控件可以使用向导,也可以添加后设置属性。
为了更好地说明控件在窗体上的作用,下面示例中的窗体来源于“罗斯文示例数据库”。
(1)选取对象控件
工具箱中的“选取对象”按钮在默认情况下是选中的,在这种情况下可以选择窗体中的控件。可以选择一个控件,也可以用鼠标在窗体上拖拽一个区域,区域内的控件都会被选中。如果选择位置不连续的控件,则可以在按下【Shift】键的同时单击控件。
(2)控件向导控件
“控件向导”按钮在默认情况下也是选中的,当要在窗体上放置控件的时候,就打开了控件向导对话框,拥有向导对话框的控件有文本框、组合框、列表框和命令按钮。
(3)标签控件
标签一般用于在窗体、报表或数据访问页上显示说明性的文字,如标题、提示或简要说明等静态情况,因此不能用来显示表或查询中的数据,是非绑定型控件。
(4)文本框控件
文本框控件用于显示数据,或让用户输入和编辑字段数据。文本框分为绑定型、非绑定型和计算型三种。绑定型文本框链接到表或查询,可以从表或查询中获取需要显示的数据,显示数据的类型包括文本、数值、日期/时间、是/否和备注等;非绑定型文本框不链接到表或查询,主要用于显示提示信息或接受用户输入的数据;计算型文本框主要用于显示表达式的结果。文本框是最常用的控件,因为编辑和显示数据是数据库系统的主要操作。
每个文本框一般需要附加一个标签来说明用途。文本框可包含多行数据,如用文本框显示备注字段数据时,因数据太长而超过文本字段宽度的数据会自动在字段边界处换行。
(5)切换按钮、单选按钮和复选按钮
单选按钮或复选按钮让用户做出某种选择。切换按钮、选项按钮和复选按钮都可以做到这一点,但是它们的外观显示却大不相同。单击字母的切换按钮,可以查询出公司名称以该字母开始或汉语拼音以该字母开始的客户电话。
这些控件与“是/否”数据类型一起使用,每种控件都分别用来表示两种状态之一:“是”或“否”、“开”或“关”,以及“真”或“假”。按钮控件的外观及状态含义见表6-2。
表6-2 按钮控件的外观及状态含义
(6)选项组控件
选项组可包含多个切换按钮、单选按钮或复选按钮。当这些控件位于选项组框中时,它们一起工作,而不是独立工作。选项组中的控件不再是两种状态,它们基于在组中的位置返回一个数值,同一个时刻只能选中选项组中的一个控件。
选项组通常与某个字段或表达式绑定在一起。选项组中的每个按钮把一个不同的值传回选项组,从而把一个选项传递给绑定字段或表达式。按钮本身不与任何字段绑定,它们与选项组框绑定在一起。
(7)组合框与列表框控件
组合框与列表框控件在功能上非常相似,但外观上有所不同,组合框一般只有一行文本的高度,而列表框要显示多行数据。组合框又称为下拉列表框,可以看作是由文本框和列表框组成的。单击组合框控件下拉按钮时,会出现一个下拉式的列表框控件,选中其中一个数据,选中的数据会显示在文本框中。
(8)命令按钮控件
在窗体中使用命令按钮控件可以执行某项功能的操作,如单击按钮可以打开或关闭另一个窗体等。
(9)选项卡控件
选项卡控件是重要的控件之一,因为它允许创建全新的界面,在大多数Windows窗体中,都包含选项卡,这样看上去显得较为专业。当窗体中的内容较多,窗体的尺寸有限,这时最好使用选项卡。将不同的数据放在不同的选项卡的页上,使用页标题在多个页上切换。
(10)图像控件
图像控件用于在窗体上显示图片,一是可以美化窗体,二是可以显示表或查询中的图片数据。
七、设置窗体的布局和格式
1. 选中控件对象
要对控件进行调整,首先要选中需要调整的控件对象。控件对象被选中后,会在控件的四周出现6 个黑色方块,称为控制柄。可以使用控制柄来改变控件的大小和位置。也可以使用属性对话框来修改该控件的属性。选定对象有如下操作方法:
(1)如果要选择一个控件,则单击该对象即可;
(2)如果要选择多个相邻的控件,则可以使用鼠标在窗体的空白处按下鼠标左键,然后拖动鼠标,出现一个虚线框,则虚线框内及虚线框碰到的控件都被选中。
(3)如果要选择多个不相邻的控件,则可以按下【Shift】键,然后单击要选择的控件。
(4)如果要选择窗体中的全部控件,则按下【Ctrl+A】组合键。
2. 移动控件
移动控件的方法有多种,具体如下。
● 如果希望在移动控件的时候,与之相关联的控件一起移动,则先将鼠标移动到控 件上面,当鼠标的形状变成手形时,拖动鼠标到合适的位置。
● 如果只想移动选定的控件,而相关联控件不动,则可以将鼠标移动到想移动的控件的左上角。当鼠标的形状变成手指形时,按下鼠标将控件拖动到合适的位置。
● 设置控件的属性移动控件。打开控件的属性对话框,在“格式”选项卡中将“左边距”和“上边距”设置为合适的数值。
● 使用键盘移动控件。选定控件,按 【Ctrl+方向键】调整控件位置。
3. 调整控件尺寸
调整控件尺寸有多种方法,具体如下:
● 使用鼠标调整控件尺寸:选中控件,控件周围出现控制柄,将鼠标移动到控制柄上,待鼠标形状变成双向箭头,拖动鼠标改变控件尺寸。
● 使用键盘调整控件尺寸:选定控件,按【Shift+方向键】调整控件尺寸。
● 使用控件属性调整控件尺寸:打开控件的属性对话框,在“格式”选项卡中将 “宽度”和“高度”设置为合适的数值。
4. 对齐控件
当窗体上有多个控件时,为了保持窗体美观,应将控件排列整齐。使用“对齐”命令,可快速对齐控件。操作步骤如下:
(1)打开窗体的设计视图;
(2)选定一组要对齐的控件;
(3)单击菜单命令“格式”→“对齐”,在弹出的下拉菜单中选择“靠左”、“靠右”、“靠上”、“靠下”或“对齐网格”选项,可设置控件的对齐方式。
5. 调整控件的间距
控件的间距调整也可以通过命令来实现,操作步骤如下:
(1)打开窗体的设计视图;
(2)选定一组要调整间距的控件;
(3)单击菜单命令“格式”→“水平间距”,选择“相同”、“增加”或“减少”来调整控件间的水平间距。或单击菜单“格式”→“垂直间距”命令,选择“相同”、“增加”、“减少”来调整控件间的垂直间距。
6. 设置控件的外观
控件的外观包括前景色、背景色、字体、字号、字形、边框和特殊效果等多个特性,通过设置格式属性可以改变这些特性。
选择要进行外观设置的一个(或多个)控件,单击工具栏上的“属性”按钮,打开所选控件的属性对话框。在“属性”对话框中单击“格式”选项卡,其中给出了所有的样式选择,从中进行各种设置。
八、美化窗体
1. 设置窗体的格式属性
在窗体设计视图中,单击工具栏上的“属性”按钮,打开窗体的“属性”对话框,选择“格式”选项卡,从中可以完成对窗体各种格式属性的设置。
2. 改变窗体的背景
(1)改变窗体背景色。
窗体的背景色将应用到除被控件对象占据的部分之外的所有区域。由“窗体向导”创建的窗体,其背景色取决于在创建该窗体时选择的特定窗体样式,默认值为银灰色。
如果已经为窗体选择了一幅图片作为背景,那么以后在窗体背景色上的任何改变都将被隐藏在图片之下。如果创建一个将要打印出来的窗体,则深色的背景不但容易模糊,而且会消耗大量的打印机色粉,同时彩色的背景降低了窗体中文本的可见度。因此用浅色背景为宜。
(2)改变窗体的背景样式。
(3)给窗体背景添加一幅图片。
可以使用一幅位图图片作为窗体的背景。Access 2003允许使用bmp、dib、emf、gif、ico、jpg、pcx、png、wmf格式的图形文件作为窗体的背景。
3. 背景图片相关属性设置
(1)图片类型。
图片类型指定了将背景图片附加到窗体的方法。可以选择“嵌入”或者“链接”作为图片类型。通常应该使用“嵌入”图片类型,这样表中的图片不依赖于可以被移走或删除的外部文件。如果有多个窗体使用同一幅图片作为窗体背景,则链接背景图片可以节省一些磁盘空间。
(2)图片缩放模式。
图片缩放模式用于指定如何缩放背景图片。可用的选项有“剪裁”、“拉伸”、“缩放”。在“剪裁”模式下,如果该图片比窗体大,则剪裁该图片使之适合窗体;如果图片比窗体小,则用窗体自己的背景色填充窗体。在“拉伸”模式下,在水平或者垂直方向上拉伸图片以匹配窗体的大小;拉伸选项允许图片失真。在“缩放”将会放大图片使之适合窗体的大小,图片不失真。
(3)图片对齐方式。
图片对齐方式用于指定在窗体中摆放背景图片的位置。可用的选项有“左上”、“右上”、“中心”、“左下”、“右下”和“窗体中心”。“左上”将图片的左上角和窗体窗口的左上角对齐,“右上”将图片的右上角和窗体窗口的右上角对齐,“中心”将图片放在窗体窗口的中心,“左下”将图片的左下角和窗体窗口的左下角对齐,“右下”将图片的右下角和窗体窗口的右下角对齐,“窗体中心”在窗体上居中图片。一般背景图片选择“窗体中心” 作为图片对齐方式的属性值。
(4)图片平铺。
图片平铺具有两个选项:“是”或“否”。选择“是”将重复地显示图片以填满整个窗体。
4. 删除窗体背景图片
如果想删除一幅背景图片,则只需删除在“图片”文本框中的输入,当出现提示“是否从该窗体删除图片”对话框时,单击“确定”按钮即可。
九、创建主/子窗体
基本窗体称为主窗体,窗体中的窗体称为子窗体。在显示具有“一对多”关系的表或查询中的数据时,主/子窗体非常有用。
1. 创建主/子窗体的必要条件
在创建主/子窗体之前,必须正确设置表间的“一对多”关系。“一”方是主表,“多”方是子表。
2. 快速创建子窗体
直接将查询或表拖到主窗体是创建子窗体的一种快捷方法。
第七章 报表的创建与应用
复习要求
1. 掌握报表的概念、类型及组成;
2. 掌握使用向导创建报表;
3. 熟练掌握使用报表设计视图创建和修改报表;
4. 熟练掌握向报表中添加控件、编辑和修改控件及其属性的方法;
5. 掌握报表的分组与排序、计算和汇总;
6. 掌握报表页面的设置及打印报表。
复习内容
一、使用自动报表或报表向导创建报表
1. 报表及其功能
报表是Access 2003中常用的数据库对象之一,报表能十分有效地以打印的形式表现数据库表或查询中的数据,报表中的数据来源可以是表、查询或SQL查询,报表中的内容和格式通过控件及其对控件属性的设置来实现,报表没有交互功能。
报表有两个功能,一是可以进行数据的比较、排序、分组、计算和汇总,从而帮助用户进一步分析数据;二是可以将报表设计成格式美观的数据表、花名册、成绩单、胸卡、信息卡、标签和信封等打印输出,还可以在报表中嵌入图像或图片来丰富数据显示的方式。
2. 报表的分类
Access 2003中的常用报表共有纵栏式、表格式、图表式和标签式4种类型。
纵栏式报表中每条记录的各个字段从上到下依次排列,左边显示字段标题,右边显示字段数值。
表格式报表中一条记录的内容显示在同一行上,多条记录从上到下显示。
图表式报表可以将库中的数据进行分类汇总后以图形的方式表示,使得统计更加直观,适用于汇总、比较及进一步分析数据。
标签式报表可以用来在一页内建立多个大小和样式一致的卡片式方格区域,通常用来显示姓名、电话等较为简短的信息,一般用来制作名片、信封、产品标签等。
3. 自动创建报表
(1)在数据库窗口中,选择“报表”对象,单击工具栏上的“新建”按钮,在“新建报表”对话框中选择“自动创建报表:纵栏式或(横栏式)”选项,选择合适的数据来源表或查询。
(2)单击“确定”按钮,将自动创建纵栏式或(横栏式)报表。
“自动创建报表”中报表的数据来源是单一的表或者查询,而且每条记录每个字段都包含在报表中,纵栏式报表每个字段占一行,表格式报表的每条记录占一行。自动创建报表,会在报表的页眉中自动添加标题,在页脚中添加日期和页码。
4. 使用“报表向导”创建报表
(1)在“新建报表”对话框中选择“报表向导”,选择数据表或查询作为数据源,单击“确定”按钮后,开始在报表向导下创建报表。
(2)第一个对话框用于确定报表上使用哪些字段,该字段可以来自多个表或查询。
(3)第二个对话框用于确定是否添加分组级别。
(4)第三个对话框用于确定是否排序及排序的方式。
(5)第四个对话框用于确定报表布局方式和方向。
(6)第五个对话框用于确定报表所用样式。
(7)第六个对话框用于输入报表的标题。
5. 使用“图表向导”创建报表
(1)在“新建报表”对话框中选择“图表向导”,选择数据表或查询作为数据源,单击“确定”按钮后,开始在图表向导下创建报表。
(2)第一个对话框用于确定图表中所使用的字段。
(3)第二个对话框用于确定合适的图标类型。
(4)第三个对话框用于确定指定数据在图表中的布局方式。
(5)第四个对话框用于输入图表的标题。
6. 使用“标签向导”创建标签报表
(1)在“新建报表”对话框中选择“标签向导”,选择数据表或查询作为数据源,单击“确定”按钮后,开始在标签向导下创建报表。
(2)第一个对话框用于确定标签尺寸、度量单位和标签类型。
(3)第二个对话框用于确定标签中文本的字体和颜色。
(4)第三个对话框用于确定标签中显示的内容,标签中的固定信息可以在“原型标签”框中直接输入,用大括号“{ }”括起来的就是表各记录的信息。
(5)第四个对话框用于确定标签中用来排序的字段。
(6)第五个对话框用于输入报表的标题名称。
标签向导中原型标签中的固定信息只能输入文本,表中的可用字段也只能是除备注、OLE类型外的其他类型的字段。
二、使用设计视图创建及修改报表
1. 报表的结构
完整的报表由7个节组成。常见的报表有5个节,分别是“报表页眉”、“页面页眉”、“主体”、“页面页脚”和“报表页脚”。在分组报表中,还会有“组页眉、组页脚”2个节。节代表着不同的报表区域,每个节的左侧都有一个小方块,称为节选定器,单击节选定器、节栏的任何位置、节背景的任何位置都可选定节。
报表的内容由节来划分,每一个节都有其特定的目的,而且按照一定的顺序显示在页面或打印在报表上,可以通过放置工具箱中的控件来确定在每一节中显示的内容及位置。
(1)报表页眉和报表页脚。
一个报表只有一个“报表页眉”和一个“报表页脚”,报表页眉只在整个报表第一页的开始位置显示和打印,一般用来放置徽标、报表标题、图片或其他报表的标识物等。报表页脚只显示在整个报表的最后一页的页尾,一般用来显示报表总结性的文字等内容。
(2)页面页眉和页面页脚。
页面页眉在报表每一页的最上方显示,用来显示报表的标题,在表格式报表中可以利用页面页眉来显示列标题。页面页脚显示在报表中每一页的最下方,可以利用页面页脚来显示页码、日期、审核人等信息。
(3)主体。
主体节包含了报表数据的主要内容,报表的数据源中的每一条记录都放置在主体节中。如果特殊报表不需要主体节,则可以在其属性表中将主体节的“高度”属性设置为“0”。
使用“视图”菜单或报表的快捷菜单可以添加、删除“报表页眉/页脚”和“页面页眉/页脚”节,并且这2个节只能作为一对同时添加或删除。
2. 报表的视图
Access 2003的报表有3种视图方式,分别是“设计视图”、“打印预览视图”和“版面预览视图”。在报表设计视图中,单击报表设计工具栏上的按钮右侧的三角按钮,可以切换到“打印预览视图”和“版面预览视图”。
“设计视图”可以使用各种工具设计新的报表或修改已有报表。使用控件工具箱中的工具可以向报表中添加各种控件,如标签和文本框。使用“格式”工具栏可以更改报表中的字体、字号、对齐文本、更改边框、线条宽度、应用颜色或特殊效果等。使用标尺工具可以对齐控件。
“打印预览视图”中按照报表打印的样式来显示报表,可以查看设计完成的报表的最终打印效果。使用“打印预览”工具栏中的按钮可以按不同的缩放比例对报表进行预览。
“版面预览视图”可以查看报表的版面设置,该视图中,报表并不全部显示所有记录,只显示几个记录作为示例。
3. 报表及控件的属性
使用设计视图创建报表时,主要是对报表的控件属性进行设置,报表的标题、报表的数据源等也通过报表属性的设置来实现。在报表设计视图中,单击常用工具栏上的“属性”按钮或单击“视图”菜单中的“属性”命令,即可打开报表属性对话框。
对话框中包含5个选项卡,即“格式”、“数据”、“事件”、“其他”、“全部”,单击某一个选项卡,就可以打开相应类别具体的属性。
(1)报表的常用格式属性及其值的含义。
① 标题。标题的属性值为一个字符串,在预览视图中,该字符串显示为报表窗口标题。在打印的报表上,该字符串不会打印出来,不设定标题属性值,系统会自动以报表的名称作为标题。
② 页面页眉与页面页脚。属性值有“所有页”、“报表页眉不要”、“报表页脚不要”、“报表页眉页脚都不要”四个选项,它决定报表的页面页眉与页面页脚是否打印。
③ 图片。属性值为一图形文件名,指定的图形文件将作为报表的背景图片,结合图片的其他属性来设定背景图片的打印或预览形式。
(2)报表的数据属性及其值的含义。
① 记录源。记录源的属性值是数据库的一个表名、查询名或者一条SELECE语句,它指明该报表的数据来源,记录源属性还可取为一个报表名,被指定的报表将作为本报表的子报表存在。
② 筛选和启动筛选。筛选的属性值是一个合法的字符串表达式,它表示从数据源中筛选数据的规则。启动筛选属性值有“是”、“否”两个选项,它决定筛选规则是否有效。
③ 排序依据及启动排序。排序的属性值由字段名或字段名表达式组成,指定报表中的排序规则,如报表按“出生日期”排序,则属性值为“出生日期”即可。启动排序属性值有“是”、“否”两个选项,它决定排序规则是否有效。
(3)报表中控件的常用属性及其值的含义。
报表工具箱中的控件有不同的作用,所以其属性也有一定的差别,但与窗体中的控件属性基本相同,在此不再赘述。
4. 日期、时间与页码表达式
在报表中添加日期、时间、页码时,可以通过控件和表达式来完成,表7-1和表7-2列出了常用的日期、时间表达式和常用页码表达式。
表7-1 常用日期、时间表达式及显示结果
表7-2 常用页码表达式及显示结果
5. 使用设计视图创建报表
(1)在“新建报表”对话框中选择“设计视图”,选择表或查询作为数据源,单击“确定”按钮,打开报表设计视图,同时所选择的表中的“字段列表”窗口和工具箱也出现在窗口中。
(2)将需要的字段拖放到“主体”节中,根据需要对该标签进行修改。
(3)以合适的位置和间距排放“主体”节中的文本框控件和标签控件。
(4)使用“标签”控件,在“页面页眉”节中添加标签的标题。
(5)单击“预览”工具按钮,查看用设计视图创建的报表。
(6)单击“文件”→“保存”保存报表。
6. 在设计视图中对报表进行修改
(1)在设计视图中打开报表。
(2)使用“工具箱”中的标签控件添加所需要的标题。
(3)使用“工具箱”中的文本框控件添加新的字段。
(4)通过属性对话框设置标签或文本框的字体、字形、字号。
(5)使用“工具箱”中的“直线”控件添加表格线。
(6)调整各节之间的间距,并调整报表的行距。
7. 在设计视图中对报表进行修饰
(1)为报表添加日期和时间。
为报表添加日期和时间有两种方法。
方法1:使用菜单插入日期和时间。
方法2:使用日期和时间表达式添加日期和时间。
(2)为报表添加页码。
为报表添加页码有两种方法。
方法1:使用菜单插入页码。
方法2:使用页码表达式添加页码。
三、对报表进行基本操作
1. 排序与分组
(1)排序。
在Access 2003中,使用“报表向导”创建报表过程中,可以设置记录的排序,但最多只能按4个字段排序。而使用“排序与分组”对话框对记录进行排序时,最多可按10个字段进行排序,并且可按字段表达式排序。
在使用“排序与分组”对话框对记录进行排序时,第一行的字段具有最高的排序优先级,第二行则具有次高的排序优先级,以此类推,即首先对数据按照第一个排序字段的值进行排序,与第一个排序字段值相同的那些记录再按照第二个排序字段的值进行排序……对字符型字段进行排序时,英文字符按26个字母顺序(大小写视为相同)进行比较,而汉字字符按汉字的首字母排列顺序进行比较。
(2)分组及组属性。
在Access 2003中,可以利用数据库中不同类型的字段对记录进行分组。但注意不能按“OLE对象”和“超级链接”字段分组。
组的属性主要有“组页眉”、“组页脚”、“分组形式”、“组间距”和“保持同页”5种。
① 组页眉:用于控制是否为当前字段添加该组的页眉。组页眉中的内容会出现在每个分组的顶端,通常用来显示分组的字段信息。其属性值有两个,分别是“是”和“否”,选择“是”添加组页眉,选择“否”则删除组页眉。
② 组页脚:用于控制是否为当前字段添加该组的页脚。组页脚中的内容会出现在每个分组的底端,通常用来显示分组后的汇总信息。其属性值也分别是“是”和“否”,选择“是”添加组页脚,选择“否”则删除组页脚。
③ 分组形式:指定对字段的值采用什么方式进行分组。不同数据类型的字段其属性的选项也不同。表7-3中列出了分组字段的数据类型和相应的属性选项。
表7-3 分组字段的数据类型和属性选项
④ 组间距:为分组字段或表达式的值指定有效的组间距。例如,分组字段为日期类型时,如果分组形式设置为周,而组间距设置为2,则表示每2周为一组。
⑤ 保持同页:设置是否在一页中打印同一组中的所有内容,其属性值有三个:“不”,指不把同组数据打印输出在同一页,而是按顺序依次打印;“所有的组”,是将组页眉、主体、组页脚打印在同一页上;“用第一个主体”,只在同时可以打印第一条详细记录时才将组页眉打印在页面上。
(3)改变报表的排序与分组顺序。
当需要改变报表的排序与分组顺序时,只需在对话框中重新选择“字段/表达式”及其“排序次序”。
在已经排序或分组的报表中,如果要插入其他排序/分组字段或表达式,则需在“排序与分组”对话框中单击要插入新字段或表达式的行选器(行前的方块),然后按【Insert】键,在当前行上面插入一空行。在空白行的“字段/表达式”列中选择要排序的字段,或者输入一个表达式,此时,“排序次序”立即显示为“升序”。要改变排序次序,可以在“排序次序”列表中选择“降序”。
在已经排序或分组的报表中,如果要删除某个排序/分组字段或表达式,则需在“排序与分组”对话框中,单击要删除的字段或表达式的行选器(行前的方块),然后按【Delete】键。如果要删除多个相邻的排序/分组字段或表达式,则可单击第一个行选定器,按住鼠标左键不放,拖到最后一个行选定器,都选中后,再按【Delete】键即可。
2. 计算和汇总
在报表中进行计算时,如果对报表中的每一条记录的数据进行计算并显示结果,则要把控件放在“主体”节中;如果要计算所有记录或组记录的汇总值或平均值,则要把计算控件添加到报表页眉/报表页脚或组页眉/组页脚中。
在报表中对全部记录或分组记录进行汇总计算时,其计算表达式中通常要使用一些聚合函数,常用的函数有以下几种。
● Count( ):计数函数,如统计人数,在相应的控件中输入表达式 “=Count(*)”。注意在统计时,空白值,即长度为零的字符串计算在内;但无值或未知值不计算在内。
● Sum( ):求和函数,如汇总“计算机基础”课程总和,表达式为 “=Sum([计算机基础])”。
● Avg( ):求汇总字段的平均值函数,如求“计算机网络”课程人平均分,表达式为“=Avg([计算机网络])”。
在报表中进行计算和汇总时,文本框控件中的计算表达式除可以直接在控件中输入外,还可以在文本框控件属性对话框的“数据”选项卡中的“控件来源”属性中输入表达式,或单击“控件来源”右侧的按钮,通过表达式生成器生成表达式。
四、打印报表
1. “页面设置”对话框
“页面设置”对话框中有“边距”、“页”、“列”三个选项卡。
●“边距”选项卡:设置打印报表时的页边距,可根据报表的大小进行调整,在示例栏中可以简单地看到调整的效果。其中的“只打印数据”选项用于确定只打印报表中的数据,而不打印线条、矩形、图片等控件。
●“页”选项卡:设置打印的方向,当报表较宽时,可将打印方向设置为横向。在此选项卡中还可以选择纸张的大小。
●“列”选项卡:报表较窄时可以在一张纸上打印多列,在此选项卡中设置列数、每列的尺寸。
2. 报表快照
报表快照是一个扩展名为.snp的文件,它包含了报表中每一页的高精度副本,保留了报表的布局、数据、图形及其他嵌入的对象。
报表快照文件使用Snapshot Viewer程序打开,它是专门用以查看、打印、邮寄报表快照的程序,在没有安装Access的环境下也能用来操作Access报表。在首次创建报表快照时,Access会自动安装Snapshot Viewer程序,但要保证原始的Office安装程序存在。
报表快照的创建步骤如下。
(1)在数据库窗口中选择“报表”对象,在列表选择需要保存为报表快照的报表。
(2)单击菜单命令“文件”→“导出”,打开报表导出对话框。
(3)在对话框中选择保存位置,输入文件名,在“保存类型”中选择“快照格式”。如果选择“自动启动”复选框,则可以在保存报表快照后自动启动Snapshot Viewer程序来显示报表快照,最后单击“导出”按钮,即可导出报表快照文件。
需要注意的是,创建报表快照时,必须安装打印机。
第八章 创建数据访问页
复习要求
1. 了解数据访问页的概念;
2. 了解创建数据访问页的方法;
3. 了解对数据访问页进行访问的方法。
复习内容
一、使用向导创建数据访问页
1. 数据访问页
数据访问页是Access 2003提供的一种特殊形式的数据库对象,是一种可以直接与数据库中的数据链接的网页。数据访问页是html格式的磁盘文件,在数据库对象中仅保留html文件的一个快捷方式。
数据访问页为使用者提供一个能够通过浏览器访问Access数据库的操作界面,使用者可以通过数据访问页对数据库中的数据进行查看、修改、删除、增加、筛选和排序等操作。
数据访问页的视图有“页面视图”和“设计视图”两种。
2. 主题
主题是一套统一的项目符号、字体、水平线、背景图像以及其他数据访问页元素的设计元素和配色方案。主题有助于方便地创建专业化的、设计精美的数据访问页。使用“数据页向导”创建数据访问页的过程中和可以为数据访问页选择主题。
3. 自动创建数据页
(1)在数据库窗口中选择“页”对象,在工具栏上单击“新建”按钮,打开“新建数据访问页”对话框。
(2)选择“自动创建数据页:纵览式”,选择表或查询作为数据源,单击“确定”按钮,自动创建数据访问页。
(3)单击“保存”按钮,在“另存为数据访问页”对话框中指定保存位置和文件名。
4. 使用向导创建数据访问页
(1)单击“新建”按钮,在对话框中选择“数据页向导”,选择合适的表或查询作为数据源,单击“确定”按钮。
(2)在向导的第一个对话框中确定报表中的字段。
(3)在向导的第二个对话框中确定分组级别字段。
(4)在向导的第三个对话框中确定排序次序。
(5)在向导的第四个对话框中确定排序次序。
(6)在向导的第五个对话框中输入数据页标题。
(7)确定数据页的保存位置和文件名。
二、使用设计视图创建数据访问页
1. 数据访问页工具箱
在进入数据访问页设计视图后,一般会自动打开“工具箱”,或通过单击工具栏上的“工具箱”按钮,或单击菜单 “视图”→“工具箱”命令打开“工具箱”。
除与窗体、报表工具箱中相同的控件外,数据访问页特有的控件按钮如下。
●“绑定范围”按钮:将html代码与Access数据库中的文本或备注字段绑定。
●“滚动文字”按钮:在数据访问页上插入一段滚动的文字。
●“展开”按钮:将展开按钮添加到数据访问页上,以便显示或隐藏已分组的记录。
●“记录浏览”按钮:用于移动、添加、删除或查找记录,其功能类似于导航栏。
●“Office数据透视表”按钮:在数据访问页上插入Office数据透视表。
●“Office图表”按钮:在数据访问页上插入Office图表。
●“Office电子表格”按钮:在数据访问页上插入Office电子表格。
●“超链接”按钮:将超级链接添加到数据访问页上。
●“图像超链接”按钮:在数据访问页上插入一个指向图像的超链接。
●“影片”按钮:在数据访问页上插入一段影片,使其成为多媒体网页。
2. 数据访问页的设计视图
数据访问页的设计视图通常由标题节、页眉节和记录导航节三部分组成。
① 标题节:用于显示标题信息。刚打开设计视图时,在标题节处有占位符,显示着浅色的文字“单击此处并输入标题文字”,单击后即可输入数据访问页的标题。注意:在标题节中不能显示字段信息。
② 页眉节:用于显示记录数据和计算结果,是数据访问页中最主要的部分。
③ 记录导航节:用于浏览、排序和筛选数据。这些功能是通过记录导航节上的按钮实现的。
3. 使用设计视图创建数据访问页
(1)在数据库窗口中,选择“页”对象,双击“在设计视图创建数据访问页”。
(2)在设计视图右边的字段列表中选择添加所需要的字段。
(3)在接下来的对话框中选择版式。
(4)在设计视图中调整各标题及字段的位置及大小。
(5)确定数据访问页保存的位置和文件名。
4. 对数据访问页进行修改
(1)为数据访问页添加标题。
① 在“设计视图”中打开数据访问页。
② 在“单击此处并输入标题文字”处输入标题,并设置其属性。
如果需要添加其他的标题或说明文字,则可以通过添加工具箱中的标签控件来实现。
(2)为数据访问页添加分组。
方法1:直接添加分组字段。
① 在“设计视图”中打开数据访问页。
② 将要分组的字段拖动到合适的位置。
③ 通常数据页的分组都以折叠的方式显示数据,要显示某个分组内的数据时,单击组前面的“展开”按钮即可。
方法2:将一般字段升级为分组字段。
① 在“设计视图”中打开数据访问页。
② 选择一般字段文本框,单击鼠标右键,在快捷菜单中选择“升级”命令,即可把该字段升级为分组字段,数据访问页就会按该字段分组显示。
三、数据访问页的使用
数据访问页直接和数据库相连,当用户在数据库或浏览器中打开数据访问页时,对其中的数据记录的新增、修改或删除,都会保存在数据库中,并能被其他访问该数据库的用户看到。但在数据访问页中对数据进行的排序、筛选等操作只会影响到其自身所看到的数据,不会保存在数据库中,其他用户看到的该数据访问页的内容不会发生改变。
1. 在数据访问页中添加、编辑和删除记录
(1)打开数据访问页,单击记录导航工具栏上的“新建”按钮,在空白页中分别输入新的记录信息,完成后保存即可。
(2)要修改某条记录的值,则先查询到该条记录,然后将需要修改的数据输入到相应的字段中去,保存修改的结果。
(3)要删除某条记录,则先查询到该记录,然后单击工具栏上的“删除”按钮。
2. 对数据访问页中的记录进行排序和筛选
(1)打开数据访问页,单击用于排序的字段文本框,单击记录导航工具栏的“升序排序”按钮或“降序排序”按钮。
(2)如果要筛选记录,则先找到需要筛选的字段的某个关键字的文本框,单击记录导航工具栏的“按选定内容筛选”按钮,则数据访问页只显示筛选出的符合要求的记录,单击“筛选切换按钮”,可取消筛选。
第九章 宏的使用
复习要求
1. 了解宏的概念;
2. 掌握宏的基本创建方法;
3. 了解宏的执行及调试。
复习内容
一、在数据库中创建宏
1. 宏与宏组的概念
宏是执行特定任务的操作或操作集合,其中每个操作都能够实现特定的功能。只有一个宏名的称为单一宏,包含两个以上宏名的称为宏组。创建宏的操作是在设计视图完成的。
通过向宏的设计视图窗口拖动数据库对象,可以快速创建一个宏。通过拖动数据库对象创建宏时,不仅能够在操作列添加相应的操作,而且还自动设置相应的操作参数。
2. 宏的功能
宏具有以下功能:
(1)打开或关闭数据表、报表,打印报表,执行查询;
(2)筛选或查找记录;
(3)模拟键盘动作,为对话框或等待输入的任务提供字符串输入;
(4)显示警告信息框、响铃警告;
(5)移动窗口,改变窗口大小;
(6)实现数据的导入、导出;
(7)定制菜单;
(8)设置控件的属性等。
3. 宏的基本创建方法
(1)在数据库中选择“宏”对象,单击“新建”按钮。
(2)打开“创建宏”对话框,在对话框中进行相应的设置。
(3)单击“保存”按钮,在“另存为”对话框中输入宏的名称。
二、执行宏
执行宏方法有以下几种。
(1)直接运行:这种方法一般用于宏的调试,实际应用中并不多见。
(2)将宏绑定到控件上:由控件事件来触发。这是宏的主要调用方法。
(3)自动运行宏:自动运行宏是在打开数据库时自动运行的,宏的名称必须命名为Autoexec。
(4)在一个宏中调用另一个宏:使用RunMacro操作可以在一个宏中调用另一个宏。
(5)宏的执行也可以设置执行条件,当条件满足时,宏就自动执行,无须调用,条件不满足就不执行,这种宏称为“条件宏”。
三、设计菜单宏
菜单是创建数据库应用系统必须的,创建菜单可以分为三个步骤:
(1)确定系统有几个主菜单,然后创建对应的宏组;
(2)创建菜单宏并调用创建好的菜单宏组;
(3)设置启动窗体,并在启动窗体的其他属性中设置菜单宏即可。
第十章 数据库的保护
复习要求
1. 了解数据库保护的意义;
2. 了解压缩和修复数据库;
3. 了解数据库的备份及还原;
4. 了解将数据库生成MDE文件;
5. 了解数据库的加密和解密;
复习内容
一、对数据库进行压缩与修复
对数据库进行压缩与修复的方法有三种。
(1)先打开要压缩与修复的数据库,单击菜单“工具”→“数据库实用工具”→ “压缩和修复数据库”命令。
(2)单击“工具”→“数据库实用工具”→“压缩和修复数据库”命令,打开对话框,选择要执行压缩与修复的数据库。在接下来的对话框中,为压缩后的数据库选择保存路径和重新命名。这样就会得到数据库的一个副本。
(3)数据库的压缩还可以自动进行,方法是在打开数据库后,选择“工具”→“选项”命令,打开选项对话框,单击“常规”选项卡,勾选“关闭时压缩”复选框。经过设置,当前数据库在关闭时会自动进行压缩。
数据库的压缩和修复是同时完成的,执行上述操作,一方面对数据库进行了压缩,同时对数据库本身的一些错误自动进行了修复。
二、备份与还原数据库
数据库的备份既可以采用Access 2003提供的方法,也可以使用Windows的文件复制功能。比较这两种方法,Windows的文件复制使用更为简便。
Access没有提供数据库的还原的方法,一般采用Windows的“复制”、“粘贴”来实现。除此之外,还可以使用Access为用户提供的动态备份功能,即同步复制数据库。
三、为数据库生成MDE文件
MDE文件就是对数据库进行打包编译后生成的数据库文件,其特点是用户不能对数据库的窗体、报表、模块等对象进行编辑,无法进入对象的设计模式,数据库中的VBA代码也不能查看,但不影响数据库的正常使用。经过MDE打包后的数据库文件有效保护了原作者的著作权,数据库的安全性得到了很大提高。
1. 转换数据库格式
在制作MDE文件之前,如果数据库的格式不是Access 2003版本,将无法生成MDE文件。为了避免这种情况发生,在生成MDE文件之前,应先进行转换操作。可以单击“工具”→“数据库实用工具”→“转换数据库”→“转为Access 2002~Access 2003文件格式”命令进行转换。
2. 制作MDE文件
单击“工具”→“数据库实用工具”→“生成MDE文件”命令,根据提示即可制作好需要的MDE文件。在将MDB格式的数据库文件转换为MDE文件之前,应对原来的数据库文件进行备份,建立一个副本,以便日后对数据库文件进行维护。
四、对数据库进行加密和解密
数据库的加密方式有两种:一是为数据库设置访问密码,二是对数据库数据加密。
1. 为数据库设置密码
(1)以独占方式打开数据库。
(2)选择菜单“工具”→“安全”→“设置数据库密码”命令,打开“设置数据库密码”对话框。
(3)分别在“密码”文本框和“验证”文本框中输入相同的密码,然后单击“确定”按钮,完成密码设置。在下次重新打开这个数据库时,系统自动弹出“要求输入密码”对话框,只有输入的密码正确,才能打开这个数据库。
2. 加密数据库数据
(1)以独占方式打开要加密的数据库。
(2)单击“工具→安全→编码/解码数据库”命令,打开“数据库编码后另存为”对话框。
(3)输入编码后的文件名并保存,系统迅速完成编码。编码后的数据库文件即使用其他软件打开,看到的也是一堆乱码,从而保证了数据库的安全。