《数据库技术及应用套幻灯片.ppt》由会员分享,可在线阅读,更多相关《数据库技术及应用套幻灯片.ppt(123页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Access数据库技术及应用数据库技术及应用第第1 1章章 数据库基础知识数据库基础知识 本章主要介绍数据库、数本章主要介绍数据库、数据库系统、数据库管理系统等据库系统、数据库管理系统等基础知识。基础知识。 1.1 数据库基础知识1.1.1 数据处理1.1.2 数据管理的发展 数据管理先后经历了人工管理、文件系统和数据库系统3个 主要阶段。1人工管理特点: 数据不保存。 数据和应用程序一一对应,即一组数据对应一个程序。 没有软件对数据进行管理。2文件系统阶段特点: 数据可以长期保存。 数据的冗余大。 数据的独立性差。3数据库系统阶段特点: 数据结构化。 数据的共享性好,冗余度低。 数据独立性高
2、。 数据由数据库管理系统统一管理与控制。1.1.3 数据库系统1. 数据(Data):描述事物的符号表示。2.数据库(DB):存储在计算机存储设备中的结构化的相关数据的集合,可 被各个应用程序所共享。3.数据库管理系统(DBMS):是在操作系统支持下的系统软件,是数据库 系统的核心。 数据库管理系统的功能 1)数据定义。 2)数据操纵。 3)数据的控制与管理。 4)数据通信。4. 数据库系统(DBS):数据库系统是指引进数据库技术后的计算机系统,是实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的手段。它由计算机硬件系统、数据库、数据库管理系统及相关软件、数据库管理员和用户5部
3、分组成。1.2 数据模型1.2.1 实体描述 1实体:客观存在并相互区别的事物称为实体,即数据库中要研究的对 象。实体可以是实际的事物,也可以是抽象的事物。 2实体的属性:属性是指实体某一方面的特性或特点,一个实体由若干个属性来刻画,通过属性值,可以确定具体的实体。例如:学生实体需要描述姓名、性别、年龄、政治面貌等属性. 3实体集:指具有相同属性的同类实体的集合。 4。实体集之间联系:现实世界中事物不是孤立存在的,而是相互之间存在联系。事物的这种关联性在信息世界的体现就是实体集与实体集之间的联系。 实体集之间的联系可以归结为3种类型:一对一联系、一对多联系、 多对多联系。1.2.2数据模型 数
4、据模型:是数据库管理系统用来表示实体及实体间联系 的方法。 常见的三种数据模型:层次模型、网状模型、关系模型。 1.层次模型:是最早出现的数据模型,它采用树形结构表示 实体之间的联系。 2.网状模型:是一个不加任何条件限制的无向图。 3.关系模型:关系模型是用二维表的形式表示实体和实体间 联系的数据模型。1.3 关系数据库 1.3.1 关系数据模型 1.关系术语 1)关系:一个关系就是一张二维表,每个关系有一个关系 名。(举例 ) Access数据库是关系数据库 。 2)元组:在一个关系中,水平方向的行称为元组,在 Access的表中,一行称为一条记录。 3)属性:关系中垂直方向的列称为属性,
5、每一列有一个属 性名。在Access中,属性名叫做字段名。 4)域:属性的取值范围,即不同元组对同一个属性的取值 所限定的范围。 5)关系模式:对关系的描述称为关系模式。一个关系模 式对应一个关系的结构,其格式为: 关系名(属性名1,属性名2,属性名n)6)主关键字:其值能够唯一标识一个元组的属性或属性 的组合叫做主关键字,简称主键。7)外部关键字:如果表中的一个字段不是本表的主关键字,而是另外一个表的主关键字,这个字段就称为外部关键字。在Access中,就是利用外部关键字来建立表之间的联系。2关系的特点:一张二维表,只有符合下面的要求才能叫做一个关系。1)元组个数是有限的。2)元组均不相同。
6、3)元组的次序可以任意交换。4)元组的属性是不可分割的数据基本项。5)属性名各不相同。6)属性的次序可以任意交换。7)同一属性的值具有相同的值域。学生表属性(字段)主键元组(记录)学号姓名性别民族09010101王思奇女汉09010102孙羡佳女满09010103李阳男汉09010104张高男回09010105王美玉女汉1.3.2 关系运算关系运算包括两类:1传统集合运算:并、交、差。2专门的关系运算:选择、投影、连接。(1)选择运算:是从一个关系中找出满足给定条件的元组,它们组成一个新的关系。参见例1.1(2)投影运算:是在给定的关系中指定若干属性组成一个新的关系。 参见例1.2(3)连接运
7、算:是根据给定的条件将两个关系中所有元组一一进行比较,将符 合条件的元组组成新的关系。新关系中包括两个关系的所有属性。参见例1.3 等值连接 参见例1.4 自然连接 参见例1.51.4 数据库设计基础1.4.1 设计原则1) “一事一表”。2)尽量避免表之间出现重复字段。3)表中的字段必须是原始数据。4)外部关键字是建立表联系的关键。1.4.2 设计步骤设计“学生管理”数据库系统 参见例1.6数据的层次结构Access将数据库划分为7个不同的对象,分别是:1.表:是由行和列组成的符合一定要求的二维表。2.查询:查询是根据一定的条件从一个或多个表中筛选出所需要的数据,形成 一个动态的数据集。 3
8、.窗体:是用户与Access数据库进行数据交互的界面,它能实现数据的输入、 编辑与查找等。 4.报表:报表用来实现数据的格式化输出。5.数据访问页:是Access 2000之后增加的数据库对象,它以Web页的格式输 入/输出数据库中的数据。 6.宏:宏是一系列操作命令的集合,其中每个操作都能实现特定的功能。 7.模块:是利用VBA(Visual Basic for Application)语言编写的实现特定 功能的程序。 Access数据库是用来存储数据及相关对象的容器,它绝不仅仅是表的集合,它还包括查询、窗体、报表、页、宏和模块等对象,并保存为一个扩展名为.mdb的文件。 1.5 初识Acc
9、ess 2003 1.5.1 Access的发展简介1.5.2 Access数据库的系统结构 1.5.3 Access 2003的启动和关闭 启动Access 2003的主要方法有: 1)选择“开始”菜单中的“所有程序”项,在“Microsoft Office”的级联菜单中选择“Microsoft Office Access 2003”。 2)双击桌面的Access 2003快捷图标。退出Access 2003的常用方法有: 1)单击窗口的关闭按钮。 2)单击“文件”菜单的“退出”命令。 3)使用快捷键 Alt + F4。1.5.4 Access 2003的工作界面Access数据库技术及应用
10、数据库技术及应用第第2 2章章 数据库和表数据库和表 本章主要介绍如何创建数本章主要介绍如何创建数据库和表、编辑表、操作表以据库和表、编辑表、操作表以及建立表之间的关系。及建立表之间的关系。 2.1 2.1 创建数据库创建数据库 在Access中,数据库是存储数据的表及其相关对象的集合,其中表是数据库应用系统的基础。可以说,没有表就没有数库的其他对象。一个数据库通常由多张表组成,每张表中可以存储不同类型的数据。2.1.1 使用数据库向导创建数据库 参见例2.1。提示:单击提示:单击 “ “Office OnlineOffice Online模板(模板(O O)”按钮,可到网上下载按钮,可到网上
11、下载数据库模板。数据库模板。2.1.2 创建空数据库 所谓空数据库,就是没有任何数据库对象的数据库。 参见例2.2。 2.1.3 打开数据库2.1.4 关闭数据库 表是数据库的核心和基础,是数据库中最常用的对象,用来存储和管理数据。2.2.1 表的组成 1.表的组成 表由表结构和表内容(记录)两部分构成。字段名是由字母、汉字、数字、下划线和空格组成的字符序列,但不能以空格开头。字段命名时还要注意:1)字段名最长不能超过64个字符。2)不能包含句点(.)、惊叹号(!)、方括号( )或重音符号()。3)Access不区分字母的大小写。2字段的数据类型 一个表的同一列数据应具有相同的数据特征和值域,
12、这就是字段的数据类型。数据类型决定了数据的存储方式和使用方式。2.2 2.2 建建 立立 表表(1)文本 文本类型是Access的默认数据类型,可以是文字或文字与数字的组合。(2)备注 备注类型用来存储长文本数据,最多为65535个字符。(3)数字 用于进行算术运算的数据,数字型字段包括字节、整数、长整数、单精度数、双精度数等类型。其中,单精度数的前67位是准确的,而双精度数前1516位是准确的。(4)日期/时间 该类型的字段用来存储日期、时间或日期与时间的组合,每个日期/时间类型的字段需要8字节的存储空间。(5)货币 货币类型是一种专用的数字类型,向货币字段输入数据时,Access会自 动添
13、加货币符号(如¥)与千位分隔符(即,),并添加两位小数。货币 型字段需要8字节的存储空间。 (6)自动编号 自动编号类型是另一种专用的数字类型,它从1开始,依次增1。自动编号类型需要4字节的存储空间。(7)是/否 是/否类型只能接受两种可能值中的一种,用来表示是/否、开/关或真/假等。(8)OLE对象 OLE的英文全称是Object Linking and Embedding,意即对象链接与嵌入。字段的类型为OLE对象,是指字段允许单独地“链接”或“嵌入”OLE对象。链接至已存在的某个文件或者插入(即嵌入)已存在的某个文件内容,每个链接对象只存放于最初的文件中,而每个嵌入对象都存放在数据库中。
14、(9)超链接 超链接类型的字段用来保存超链接的地址,如http:/。 (10)查阅向导 查阅向导是一种特殊的数据类型,可以在下拉列表中选择值,或者手工输入字段的值。2.2.2 建立表结构1使用“设计”视图所谓视图,实际上就是窗口。表视图主要有设计视图和数据表视图。设计视图用来创建表结构,数据表视图用来显示表中的数据。参见例2.3。2使用“表向导”在数据库窗口,选择表对象,双击“使用向导创建表”;或者单击“新建”按钮,打开“新建表”对话框,选择“表向导”,单击“确定”按钮。参见例2.4。3使用“数据表”视图在数据库窗口,选择表对象,双击“通过输入数据创建表”;或者单击“新建”按钮,打开“新建表”
15、对话框,选择“数据表视图”,单击“确定”按钮。参见例2.5。2.2.3 设置字段属性 1字段大小 参见例2.6。 2格式 参见例2.7。 3输入掩码 参见例2.8。 4默认值 参见例2.9。 5有效性规则和有效性文本 参见例2.10。 6必填字段 7允许空字符串所谓空字符串,是指用英文双引号括起来的0个字符(即),它的长度为0。 8索引 参见例2.11。2.2.4 向表中输入数据 1数据的输入 参见例2.12。 2长文本数据 提示:在文本或备注型字段中输入数据时,可按提示:在文本或备注型字段中输入数据时,可按Ctrl+EnterCtrl+Enter键键换行。换行。 3“查阅向导”数据 参见例2
16、.13。 4 OLE对象的数据 参见例2.14。2.2.5 数据的导入导出 1数据的导入 参见例2.15。 2数据的导出 参见例2.16。2.2.6 建立表之间的关系 1定义表的主键 主键的全称为主关键字,它的值能够唯一地标识表中一条记录的字段或字段的组合。在Access数据库中,允许定义3种类型的主键,即自动编号、单字段和多字段。 2. 创建表之间的关系 参见例2.17。 3. 参照完整性 所谓“参照完整性”,是指为维持表之间已定义的关系而必须遵循的规则。 具体地说,当选择了“编辑关系”对话框的“实施参照完整性”时: 1)主表中没有相关记录,相关表就不能添加相应记录。例如,“学生表”没有张志
17、的记录,“选课表”就不能添加张志的选课信息。 2)反过来,参照完整性编辑(添加、更新、删除)相关表的记录,不影响主表中的记录。 3)相关表中有匹配记录时,不允许删除主表中记录,也不允许更改主表中的主键值。 4.编辑表间关系 1)查看关系。 2)修改关系。 3)删除关系。 4)打印关系。2.2.7 使用子数据表 1显示与隐藏子数据表 2创建子数据表 3. 删除子数据表2.3 编辑表2.3.1 打开和关闭表2.3.2 修改表结构 1添加字段 2修改字段 3删除字段 4重设主键2.3.3 编辑表中的数据 1定位记录 2选择记录 3添加记录 4删除记录 5修改数据 6复制数据2.3.4 调整表外观 1
18、改变字段的显示次序 参见例2.18。 2调整行高或列宽 参见例2.19。 3隐藏列 参见例2.20。 4冻结列 参见例2.21。 5设置数据表的显示格式 参见例2.22。 6改变数据字体 参见例2.23。2.4 操 作 表2.4.1 数据的查找与替换 1查找指定的内容 参见例2.24。 2查找空值 参见例2.25。 对于文本型与备注型字段,可以使用Null(空值)查找空值记录。 3替换指定的内容 参见例2.26。2.4.2 记录排序 1排序规则 1)数字型或货币型数据,其比较规则与数学完全一致。 2)日期/时间型数据,按日期的时间顺序进行比较,较早的小,较近的大。 3)是/否型数据仅有两个值:
19、是(即True),否(即False)。“是”小,“否”大。4)文本型数据是由字母、数字、各种符号以及汉字组成的字符串。两个字符串的比较规则是:从左至右逐个字符比较,直到出现不等的字符或一个串结束时停止。如果全部字符都相同,则两个字符串相等;否则,以出现第一个不等字符的比较为准。 西文字符,包括字母、数字、各种符号(参看附录A),按ASCII码值进行比较。值小的字符小,值大的字符大。 汉字按拼音字母的顺序(即字典的顺序)进行比较,前面的汉字小,后面的汉字大。 西文字符与汉字字符比较,西文字符小,汉字字符大。5)空值最小。2单字段排序参见例2.27。3多字段排序参见例2.28与例2.29。2.4.
20、3 记录筛选筛选就是将满足条件的记录从表中挑选出来,以便进行处理。1按选定内容筛选参见例2.30。2按窗体筛选参见例2.31。 3按筛选目标筛选参见例2.32。 4内容排除筛选参见例2.33。5高级筛选 高级筛选不仅可以筛选出满足复杂条件的记录,还可以对筛选的结果进行排序。 参见例2.34。 实际上,例2.30-例2.34都可以使用“高级筛选”完成,由此可知,筛选的实质就是带条件的查询。Access数据库技术及应用数据库技术及应用第第3 3章章 查询查询 本章详细介绍查询的概念、本章详细介绍查询的概念、功能、创建和使用。功能、创建和使用。 第3章 查 询3.1 什么是查询查询即查找、询问。3.
21、1.1 在设计视图中创建查询1创建不带条件的查询参见例3.1。 2创建带条件的查询参见例3.2。3. 创建以查询为数据源的查询参见例3.3。 查询是以数据库中的表或查询作为数据源,按照一定的条件对其进行查找,产生一个类似于表的结果,通常称为虚表。所谓虚表是指并非真正存在的表,即查询的结果数据是不保存的。查询保存的不是数据的集合,而是操作的集合。3.1.2 查询的条件 1常量 设置查询条件所使用的常量主要有数值常量、字符串常量和日期常量。(1) 数值常量如整数50、-23、8,实数0.25、-3.57、89.56等。(2) 字符串常量用英文双撇号括起来的有限个字符序列叫做字符串常量,如 二级等级
22、考试、This is a book.、$456.7、 (空格串)、(空串)等。其中的双撇号是定界符,它不属于字符串常量的内容。在例3.2中设置“性别”为男的条件,使用的是字符常量。(3) 日期常量用英文井号括起来的日期称为日期常量,如#2011-9-21#、#2011/9/21#、#9,21,2011#等。其中的井号是定界符,它不属于日期常量的内容。 2.运算符 运算符用来对数据进行操作。经常使用的运算符有算术运算符、关系运算符、逻辑运算符、特殊运算符等。 (1) 算术运算符 (2) 关系运算符 对于数值型数据,比较方法和数学一样。西文字符串的比较规则是:从左至右逐个字符比较,直到出现不等时,
23、ASCII码值较大的字符所在的串大(附录A)。汉字字符按字典的拼音顺序进行比较,后面的汉字大于前面的汉字。日期型数据按纪年的前后顺序进行比较,较早的日期小,较近的日期大。 (3) 逻辑运算符 And 与,当且仅当两侧的关系都为真时,结果为真;否则,结果为假。 Or 或,当且仅当两侧的关系都为假时,结果为假;否则,结果为真。 Not 非,其后的关系为假,结果为真;其后的关系为真,结果为假。 参见例3.4。方法1. 使用“设计”视图的“或”行。方法2. 使用Or运算符。方法3. 使用In运算符。方法4. 使用Like运算符。 3.常用函数 (1) 字符串函数 Left (s,n) 从字符串s左侧的
24、第一个字符开始,截取n个字符。 例如,查找09级的学生,条件可写成:Left(学号,2)=09。 Right (s,n) 从s右侧的第一个字符开始,截取n个字符。 Mid (s,m,n) 从s左侧第m个字符开始,截取n个字符。 例如,查找“学号”的第3位和第4位是02的学生,条件可写成:Mid(学号,3,2)=02。 Len(s) 返回s中所包含的字符个数。 例如,查找“姓名”长度为两个字符的学生信息,条件可写成:Len(姓名)=2。 (2) 日期函数 Year(d) 返回日期d的年份。 例如,查找“出生日期”是1991年的学生信息,条件可写成:Year(出生日期)=1991。 Date()
25、返回当前的系统日期。 例如,查找年龄小于等于20岁的学生信息,条件可写成:Year(Date()-Year(出生日期)=20。 Now() 返回当前系统日期和时间。4.表达式 用运算符将常量、字段名、函数等连接起来的,符合Access语法规则的式子称为表达式。像小学的算式、中学的代数式一样,表达式的计算结果叫做值。3.2 选择查询 选择查询是查询方法中非常重要和常见的一种,它是根据指定的条件,从一个或多个数据源中进行数据检索。创建选择查询有两种方法,一是使用“设计”视图创建查询,如例3.13.4;二是使用“查询向导”来创建查询。3.2.1 查询的设计视图1创建多个数据源的查询参见例3.5。2创
26、建复杂条件的查询参见例3.6。注意:注意:在设置条件时所使用的标点符号均为英文,若使用中文在设置条件时所使用的标点符号均为英文,若使用中文标点,系统会弹出错误提示:标点,系统会弹出错误提示:“输入的表达式包含无效的语输入的表达式包含无效的语法法”。3.2.2 在查询中实现计算1查询的计算功能在Access中,可以实现两种计算,一种是预定义的计算,一种是自定义的计算。预定义计算其实就是 “总计”计算,是系统提供的对查询中的记录或记录组进行计算,包括求和、求平均值、最大值、最小值与计数等。自定义计算是用户根据自己的需要使用一个或多个字段中的数据进行各种计算。2预定义计算参见例3.7。参见例3.8。
27、3自定义计算参见例3.9。3.2.3 使用向导创建查询1. 创建基于一个数据源的查询参见例3.10。2. 创建基于多个数据源的查询参见例3.11。提示:当所建查询的数据源来自于多个表时,应先建立表之间提示:当所建查询的数据源来自于多个表时,应先建立表之间的关系。的关系。3.3 参数查询所谓参数查询,就是根据字段的不同取值来查找所需要的信息。当运行参数查询时,系统会弹出一个提示对话框,根据用户输入的具体参数值确定查询结果。用户可以创建单参数查询,也可以创建多参数查询。3.3.1 创建单参数查询参见例3.12。注意:注意:条件行的方括号不可省略,方括号中的内容就是运行查条件行的方括号不可省略,方括
28、号中的内容就是运行查询时出现在对话框中的提示文字,但不能与字段名相同。询时出现在对话框中的提示文字,但不能与字段名相同。 3.3.2 创建多参数查询参见例3.13与与例3.14。 3.4 交叉表查询 交叉表查询就是将数据源中的字段进行分组,一组列在交叉表的左侧,一组列在交叉表的上部,并在行与列的交叉处显示某个字段的各种计算值。这是一种非常独特的查询类型,不仅能用来计算数据的总计、平均值等,还能重新组织数据的结构,更加方便地分析数据。创建交叉表查询有两种方法:“交叉表查询向导”和查询“设计”视图。3.4.1 使用向导创建交叉表查询参见例3.15。3.4.2 使用设计视图创建交叉表查询参见例3.1
29、6。3.5 操作查询3.5.1 生成表查询生成表查询是从一个或多个数据源中将满足条件的记录查找出来并生成一个新表,这是一个实实在在的表。参见例3.17。3.5.2 更新查询 如果需要修改符合条件的一批记录,使用“数据表”视图将是一件非常麻烦的事,而且容易疏漏。更新查询是实现此类操作最简单最有效的方法,它能对一个或多个表中的一组满足条件的记录或全部记录进行更改。参见例3.18。3.5.3 追加查询 维护数据库时,如果要将某个表中符合一定条件的记录添加到另一个表上,可以使用追加查询。要特别指出,追加的记录一定在另一个表的末尾。参见例3.19。3.5.4 删除查询 如果删除的记录来自于多个表,那么必
30、须满足以下几点: 1在“关系”窗口中定义表之间的关系。 2在“编辑关系”对话框中选中“实施参照完 整性”复选框。 3在“编辑关系”对话框中选中“级联删除相关记录”复选框。参见例3.20。3.6 SQL查询3.6.1 什么是SQL语言 SQL(Structure Query Language,结构化查询语言),它是数据库领域中应用最为广泛的数据库查询语言。 SQL是一种非过程性语言,它属于第四代计算机语言。使用SQL时,只需要描述“做什么”,而不需要说明“怎么做”。3.6.2 查询与SQL视图 一个查询对应着一条SQL语句,即查询的实质是SQL语句。当使用“设计”视图创建一个查询时,就自动生成一
31、条等价的SQL语句。 要进入SQL视图,必须先打开查询的“设计”视图,并关闭“显示表”对话框。然后,单击工具栏“视图”的向下按钮,选择SQL视图。或者单击“视图”菜单的“SQL视图”选项,进入SQL视图。3.6.3 创建SQL基本查询SELECT语句的一般格式为:SELECT ALLDISTINCT * | FROM WHERE GROUP BY HAVING ORDER BY ASCDESC;其中,语句格式中的符号含义如下: 必选项; 根据需要进行选择,也可以不选; 从多项选择中选择其中之一。(1) 检索表中所有记录的所有字段。参见例3.21。(2) 检索表中所有记录的指定字段。参见例3.2
32、2。 (3) 检索满足条件的记录和指定字段。参见例3.23。(4) 进行分组统计并排序,添加新字段。参见例3.24。 注意:语句中的查询,语句中的查询,AS AS 后面是新的字段名称。后面是新的字段名称。(5)(5)实现参数查询实现参数查询参见例3.25。(6) 将多个表连接在一起。参见例3.26。3.6.4 创建SQL特定查询1数据定义查询 使用数据定义查询可以创建表、删除表、更改表结构,以及创建索引等。 (1)CREATE TABLE 语句 这个语句用来创建表结构,基本格式如下: CREATE TABLE ( , , , ); 参见例3.27。(2) ALTER TABLE语句这个语句用来
33、更改表结构,基本格式如下:ALTER TABLE ADD DROP字段名列表 ALTER ;参见例3.28。 (3) DROP语句这个语句用来删除表,基本格式如下:DROP TABLE 参见例3.29。2联合查询联合查询是将两个或多个查询结合到一起。这时,要求各查询所选择的字段名、类型、个数和顺序必须一致。联合查询使用Union子句实现,其结果就是将各查询的数据合并到一起,这实质上是集合的并运算。参见例3.30。3子查询包含在一个选择查询或操作查询之内的SELECT语句叫做子查询。这告诉我们,子查询不能单独使用,它常作为主查询的查询条件。子查询既可以在查询设计网格的“字段”行输入SQL语句来定
34、义新字段,也可以在“条件”行上输入SQL语句来定义字段的条件。参见例3.31。提示:子查询的提示:子查询的SELECTSELECT语句不能定义为联合查询或交叉表查询语句不能定义为联合查询或交叉表查询。3.6.5 数据操作语句1INSERT语句 这个语句能将一条新记录添加到指定表的末尾。该语句的格式为: INSERT INTO () VALUES(); 参见例3.32。2UPDATE语句 这个语句能对表中满足条件的记录或所有记录进行更新操作。该语句的格式为: UPDATE SET =,= WHERE ; 参见例3.18方法2。3DELETE语句 这个语句能对指定表所有记录或满足条件的记录进行删除
35、操作。该语句的格式为: DELETE FROM WHERE;参见例3.33。 综上所述,Access数据库的查询功能是很强大的,它不但能从数据源中选择字段与记录,而且可以对表中记录进行编辑(添加、修改、删除等)。此外,查询还能实现计算,建立新表,以及为窗体、报表或数据访问页等对象提供数据源。第第4 4章章 窗窗 体体Access数据库技术及应用数据库技术及应用 本章主要介绍窗体的本章主要介绍窗体的基本概念、结构、功能以基本概念、结构、功能以及创建方法等及创建方法等。一个窗体就是一个窗口,它是具有数据管理功能的窗口。4.1.1 自动创建窗体1纵栏式窗体参见例4.1。特点:是一次仅显示一条记录,并
36、按列显示,每列的左侧显示字段名,右侧显示字段值。2表格式窗体特点:是一次显示多条记录,并按行显示,最上面是字段名,下面是各条记录每一条记录占一行。3数据表窗体特点:是以表格的形式显示记录类似于在数据表视图下显示的表对象。但是,它不直接显示OLE对象类型的数据(如照片字段)。4.1 什么是窗体?4.1.2 使用向导创建窗体 使用向导创建窗体,根据提示选择相关的数据源(一个或多个)、字段及设置格式等,能满足更复杂的要求。参见例4.2。 窗体中的窗体叫做子窗体,包含子窗体的窗体称为主窗体。主窗体和子窗体常用于显示多个数据源中的数据,这些数据源中的数据应具有一对多关系。 在主/子窗体中,主窗体只能是纵
37、栏式,子窗体可以是表格式或数据表式等。当在主窗体中进行编辑时,会反映到子窗体对应的表中。创建嵌接式主/子窗体的方法:方法1:使用自动创建窗体, 参见例4.3方法1。方法2:使用窗体向导, 参见例4.3方法2。方法3:添加子窗体控件, 参见例4.18。创建链接式主/子窗体, 参见例4.4。4.2 创建主/子窗体4.3.1 自动创建数据透视表窗体参见例4.5。数据透视表是一种特殊的表,用于进行数据计算和分析。通过数据透视表,可以动态更改表的布局,以不同的方式查看和分析数据。4.3.2 自动创建数据透视图窗体参见例4.6。4.3.3 使用图表向导创建图表窗体参见例4.7。 数据透视表、数据透视图,以
38、及图表窗体,它们的共同点数据透视表、数据透视图,以及图表窗体,它们的共同点是以直观的图、表方式来显示分类汇总数据。是以直观的图、表方式来显示分类汇总数据。4.3 创建图表窗体4.3.4 窗体的视图 目前已经学习了7种类型的窗体,分别是纵栏式窗体、表格式窗体、数据表窗体、主/子窗体、数据透视表窗体、数据透视图窗体与图表窗体。根据它们的作用与显示方式不同将其归纳为5种视图:1)窗体视图用来输入、修改或查看窗体的内容,每次只能查看一条记录。2)数据表视图以行与列形式显示记录,可以同时查看多条记录。3)数据透视表视图通过排列筛选、行、列和明细等区域中的字段,可以查看明细数据或汇总数据。4)数据透视图视
39、图通过选择一种图表类型并排列筛选、序列、类别和数据区域中的字段,可以直观地显示数据。5)设计视图是用户的“工作台”。4.4.1 设计视图4.4 设计窗体1设计视图的组成1)主体节是“设计”视图的主要区域。用来设置数据源中的记录,在窗体视图,它可以显示一条记录,也可以显示多条记录,如图4.1和图4.3所示。2)窗体页眉位于窗体顶端,用于设置窗体的标题、图片、说明等信息。3)窗体页脚位于窗体的底部,用于设置所有记录都显示的内容,如命令按钮等。4)页面页眉在窗体视图不显示,用于设置打印时每页的页眉信息,如字段名等。5)页面页脚在窗体视图不显示,用于设置打印时每页的页脚信息,如日期、时间和页码等。提示
40、:设计一个窗体,主要使用主体、窗体页眉与窗体页脚节提示:设计一个窗体,主要使用主体、窗体页眉与窗体页脚节。1)绑定型控件:即绑定到数据源中字段的控件。当向绑定控件输入数据时,Access会自动更新数据源当前记录该字段的值。可以用来输入数据的控件都是绑定控件。2)未绑定型控件:保留输入的数据,但不更新任何数据源中的字段。可以用来显示文本标签,直线或矩形等控件。3)计算型控件:来源于表达式,如函数或计算,也是一种未绑定型控件。控件类型对工具箱中的控件,着重指出如下几点。1)单独的标签与自动生成的标签单击“标签”按钮产生单独的标签,用于设置说明性的文本。单击其他控件按钮,在产生该控件的同时自动生成标
41、签,用于标识。2)选项组控件选项组是一个包含切换按钮、选项按钮或复选框等控件的控件。一个选项组由一个组框架及一组切换按钮、选项按钮或复选框组成,选项组的框架一般与数据源中的字段绑定。3)列表框与组合框列表框可将一些内容以列表的形式显示;组合框则是同时具有列表框与文本框功能的控件,既可以从列表中选择值,也可以输入值。若窗体上输入的数据来自数据源中的字段,可以使用列表框或组合框控件。这样不仅可以确保输入数据的正确性,还可以大大提高输入的速度。4)绑定与未绑定型控件绑定型控件,是指它的数据来源于表或查询中的字段值,用于显示和编辑数据源中的字段;未绑定型控件无数据来源,用于显示信息,如标签、线条,矩形
42、等。5)绑定与未绑定对象框绑定对象框存放与数据源字段绑定的OLE对象或嵌入式图片。未绑定对象框存放没有绑定到数据源字段的OLE对象或嵌入式图片。4.4.2 常用控件的使用例4.8 以“学生表”为数据源,创建“学生情况一览表”窗体。例4.9 创建如图所示“教师情况一览表”窗体。4.4.3 控件的基本操作1选择控件选择一个控件,单击所需控件。在控件上出现8个矩形控点,左上角的控点称为“移动控点”,其他控点为“尺寸控点”。选择连续控件,由非控点位置开始拖动一块矩形区域。选择不连续控件,按下Shift键的同时,单击所选控件。取消选择,单击其他区域。2改变控件大小选中控件,拖动尺寸控点即可。3移动控件选
43、中一个控件,将鼠标指针定位到移动控点,当指针变成 状时拖动即可。选中多个控件,将鼠标指针定位到移动控点,当指针变成 状时拖动即可。4删除控件选中控件,按Delete键即可。5对齐控件 选中控件,使用“格式”菜单的“对齐”命令,可对多控件进行“靠左、靠右、靠上、靠下、对齐网格”等设置。4.4.4 窗体和控件的属性1窗体的常用属性(1)格式属性标题:窗体标题栏显示的信息。滚动条:窗体视图是否显示水平或垂直滚动条,默认为“两者均有”。记录选择器:窗体视图是否显示记录选择器,默认为“是”。导航按钮:窗体视图是否显示导航按钮,默认为“是”。分隔线:窗体视图是否显示各节之间的分隔线,默认为“是”。(2)数
44、据属性记录源:选择该窗体的数据源,可以是数据库中的表名或查询名。允许编辑:在窗体视图是否允许修改数据,默认为“是”。允许删除:在窗体视图是否允许删除记录,默认为“是”。允许添加:在窗体视图是否允许添加记录,默认为“是”。(3)其他属性弹出方式下是否以弹出方式显示窗体,默认为“否”。2控件的常用属性(1)格式属性标题:设置控件中显示的文字。特殊效果:设置控件的显示效果,有“平面”、“凸起”、“凹陷”、“蚀刻”、“阴影”与“凿痕”等。字体名称:设置文字的字体。字号:设置文字的大小。(2)数据属性控件来源:用于设置绑定型控件的数据源字段或计算控件的计算表达式。输入掩码:用来设置控件的输入格式,仅对文
45、本型和日期/时间型数据有效。默认值:用来设置一个计算型控件或未绑定型控件的初值。有效性规则:用来设置控件中输入数据的合法性检查表达式。有效性文本:当输入的数据违反有效性规则时所显示的提示信息。(3)事件属性所谓事件,是指窗体或控件可以识别的动作,如单击命令按钮。当事件发生时,要么执行一个宏(第7章),要么执行一个事件过程。这个事件过程可以是系统定义的操作,如例4.8中的 按钮,执行“转至前一项记录”操作;也可以是用户编写的响应事件的过程(第8章)。(4)其他属性名称:标识一个控件的名字,同一窗体中的控件名称是不允许相同的。Tab键索引:内容是由0开始的整数,该值指示窗体内使用Enter键或Ta
46、b键的顺序。在文本框中,输入数据后,按Tab键或按Enter键自动将焦点(即光标)移至下一指定文本框。自动Tab键:设置Access在该控件是否可自动移出光标,默认为“否”。该控件可提高用户对窗体的处理速度。参见例4.10与例4.11。4.5 格式化窗体4.5.1 自动套用格式4.5.2 使用条件格式 参见例4.12。4.5.3 添加日期和时间窗体的功能1显示和查找记录。2输入和编辑数据。3以直观的图表方式来显示分类汇总数据。4能控制应用程序的流程。 第第5 5章章 报报 表表Access数据库技术及应用数据库技术及应用 本章主要介绍报表的创建、本章主要介绍报表的创建、分类、功能、组成,排序和
47、分分类、功能、组成,排序和分组记录及多列报表等。组记录及多列报表等。1纵栏式报表参见例5.1。特点:是以列的形式显示记录,左侧显示字段名,右侧显示字段值。一页显示一条或多条记录,记录之间用分隔线间隔。使用导航按钮可显示下一页报表。通过浏览,可发现仅报表第一页的顶端显示标题“学生表”,在每页报表的底部均显示日期和页码信息。2表格式报表特点:是以行的形式显示记录,通常一行显示一条记录,一页可显示多条记录。通过浏览,也是报表的第一页顶端显示标题“学生表”,每页的上面均显示字段名,每页的底部均显示日期和页码。5.1 创建报表5.1.1 自动创建报表5.1.2 使用报表向导创建报表 自动创建纵栏式与表格
48、式报表,只能有一个数据源,并且不能根据需要选择字段,格式也简单。而使用向导创建报表,可根据提示选择相关数据源、字段和格式等,满足特定的需要。参见例5.2。 可以看出使用“报表向导”创建报表,不仅可以按某字段分组或排序,还可以对数据进行统计计算。5.1.3 使用图表向导创建报表图表报表直观地反映数据之间的关系。参见例5.3。5.1.4 使用标签向导创建报表在实际应用中,经常会见到标签,如行李标签、商品标签、名片、听课证等。参见例5.4。5.2.1 报表的组成1)报表页眉:在报表第一页的顶端,用来显示报表的标题、图像或说明性文字。每份报表只有一个报表页眉,如图5.1和图5.3所示的报表标题“学生表
49、”。2)页面页眉:在每页报表的上面,用来显示字段名或分组名。如图5.3所示,每页报表上面的字段名。3)主体:是报表的主要组成部分,用来显示每条记录,所有的报表均有主体节。根据主体节字段数据的显示位置,报表可分为4种类型:纵栏式、表格式、图表和标签。4)页面页脚:在每页报表的底部,用来显示页码、日期或汇总等信息。如图5.1和图5.3所示,每页底部都有日期与页码5)报表页脚:在报表最后一页,主体节内容结束之后,用来显示整份报表的汇总等信息。参见例5.5。5.2 使用设计视图创建报表5.2.2 报表与控件的属性报表的常用属性有以下几种。(1)格式属性标题:报表标题栏显示的信息。页面页眉:控制页标题是
50、否显示在所有的页。页面页脚:控制页脚信息是否显示在所有的页。(2)数据属性记录源:选择该报表的数据源,可以是数据库中的表名或查询名。筛选:设置条件,使报表只输出满足条件的记录。打开筛选:确定筛选条件是否生效。排序依据:设置报表中记录的排序条件。启动排序:确定排序依据是否生效。(3)其他属性记录锁定:设置在生成报表所有页之前,禁止其他用户修改报表所需要的数据。5.3 报表排序与分组 在默认情况下,报表中的记录是按输入的先后顺序排列并显示的。在实际应用中,常需要按某个字段的指定顺序排列报表中的记录,称为报表排序,如按照教师工资从高到低排列。5.3.1 记录排序 使用“报表向导”创建报表时,最多可以