1、ACCESS基础教程 Access 是一种理想的数据库管理是一种理想的数据库管理系统系统关系型数据库第一章概述 1.1 Access简介 1.2 Access浏览 1.3 VBA简介 小结1.1Access简介 Access作为Microsoft Office软件中的一个重要的组成部分,随着版本的一次次升级,现已成为世界上最流行的桌面数据库管理系统。1.1.1 Access应用及发展现状 Access历经多次升级改版,Access2.0到Access95、Access97、Access2000、Access2002以及Access20031.1.2 Access的特点1.1.AccessAcc
2、ess中的七种数据库对象,分别是中的七种数据库对象,分别是数据表数据表、查询查询、窗体窗体、报表报表、webweb页页、宏宏和和模块模块。2.2.AccessAccess作为作为数据库管理系统,与其它数据库软件的比较:3.Access中的强大的开发工具(VBA)4.Microsoft Access与Microsoft office 中的Excel共享数据 5.Access中的强大的帮助信息 6.Access中的向导功能 7.Access中可使用Internet功能 8.Access2002数据库具有较强的安全性(1)数据表 数据表 是关于特定实体的数据集合,由字段和记录组成。一个数据库中可以有
3、多个数据表。见图1.1 字段就是表中的一列,字段存放不同的数据类型,具有一些相关的属性,字段的基本属性有:字段名称,数据类型,字段大小等,可设定不同的取值。记录就是数据表中的一行,记录用来收集某指定对象的所有信息。返回(2)查询 查询是数据库的核心操作。利用查询可以按照不同的方式查看、更改和分析数据。也可以利用查询作为窗体、报表和数据访问页的记录源。查询的目的就是根据指定条件对数据表或其他查询进行检索,筛选出符合条件的记录,构成一个新的数据集合,从而方便用户对数据库进行查看和分析。Access中的查询包括选择查询、计算查询、参数查询、交叉表查询、操作查询、SQL查询。返回(3)窗体 设计一个好
4、的窗体就建立起友好的用户界面,会给使用者带来极大方便,使所有用户都能根据窗体中的提示完成自己的工作,而不用专门进行培训。这是建立窗体的基本目标。返回(4)报表 报表是以打印的形式表现用户数据。如果想要从某些记录打印信息时就可以使用报表。通常情况下,我们需要的是打印到纸张上的报表。在ACCESS中,报表中的数据源主要来自基础的表、查询或SQL语句。用户可以控制报表上每个对象(也称为报表控件)的大小和外观,并可以按照所需的方式选择所需显示的信息以便查看或打印输出。返回(5)数据访问页)数据访问页 数据访问页是数据访问页是AccessAccess发布的发布的WebWeb页,用户通过数据访页,用户通过
5、数据访问页能够查看、编辑和操作来自问页能够查看、编辑和操作来自InternetInternet或或IntranetIntranet的的数据,而这些数据是保存在数据,而这些数据是保存在AccessAccess数据库中的。这种页数据库中的。这种页也可能包含来自其他数据源(如也可能包含来自其他数据源(如ExcelExcel工作表)的数据。工作表)的数据。数据访问页是直接与数据库连接的。当用户在数据访问页是直接与数据库连接的。当用户在Microsoft Internet ExplorerMicrosoft Internet Explorer中显示数据访问页时,中显示数据访问页时,实际上正在查看的是该页
6、的副本。对所显示数据进行的实际上正在查看的是该页的副本。对所显示数据进行的任何筛选、排序和其他相关数据格式的改动,只影响该任何筛选、排序和其他相关数据格式的改动,只影响该数据访问页的副本。但是,通过数据访问页对数据本身数据访问页的副本。但是,通过数据访问页对数据本身的改动,例如修改值、添加或删除数据,则都会被保存的改动,例如修改值、添加或删除数据,则都会被保存在基本数据库中。在基本数据库中。返回(6)宏宏是指一个或多个操作的集合,其中每个操作实现特定的功能,如打开某个窗体或打印某个报表。宏可以使某些普通的、需要多个指令连续执行的任务能够通过一条指令自动地完成。宏是重复性工作最理想的解决办法。例
7、如,可设置某个宏,在用户单击某个命令按钮时运行该宏,可以打印某个报表。宏可以是包含一个操作序列的一个宏,也可以是若干个宏的集合所组成的宏组。宏组是一系列相关宏的集合,将相关的宏分到不同的宏组有助于方便地对数据库进行管理。返回(7)模块模块是将VBA(Visual Basic for Applications)的声明和过程作为一个单元进行保存的集合,即程序的集合。模块的主要作用是建立复杂的VBA程序以完成宏等不能完成的任务。模块有两个基本类型:类模块和标准模块。返回1.2 Access浏览 1.2.1 安装Access 1.2.2 启动与退出Access 1.2.3 Access 界面 1.2.
8、4 Access帮助 1.2.2启动与退出Access启动Microsoft Access退出Microsoft Access返回1.2.3 Access 1.2.3 Access 界面界面 1.2.3 Access 界面 1.Access数据库菜单栏介绍(1)Access数据库菜单栏(2)打开菜单的方法 2.Access常用工具栏介绍(1)Access数据库的工具栏(2)打开工具栏的方法 3.Access数据库设计视图窗口介绍返回 数据库设计窗口 1.2.4 Access帮助 “目录/索引”“这是什么?”“Office助手”“网上Office”返回1.3 VBA简介 1.3.1 VBA介绍
9、1.3.2VBE介绍 1.3.1 VBA介绍 VBA是一种面向对象的语言,VBA是Microsoft Access中的内置编程语言,VBA的语法与独立运行的Visual Basic编程语言相互兼容 VBA是一套完整的应用程序开发环境,用户可用Visual Basic语言来编写程序,完成对数据库的设计。1.3.2 VBE介绍 在Access中提供的VBA开发界面称为VBE(Visual Basic Editor)。在VBE中可编写VBA函数和过程。VBE窗口见下页:(1)VBE的启动方法(2)VBE工具栏介绍 VBE窗口 第一章小结学习重点1.启动Access数据库 2.退出Access数据库
10、3.Access中七种数据库对象学习难点 Access中七种数据库对象第10章 Access应用程序设计 本章将以高校教学管理系统为例,介绍如何利用Access 2000进行应用程序设计。10.1 系统分析与设计 10.2 数据库的设计10.3 系统功能概述10.4 创建数据表和索引 10.5 设计窗体 10.6 编码实现 10.7 系统的调试及发布(1)院系管理:包括院系的设置及相关资料查询。(2)专业管理:包括专业的设置及相关资料查询。(3)教师档案:包括教师档案的建立、修改及查询。(4)学生档案:包括学生档案的建立、修改及查询。(5)课程管理:包括课程设置及相关资料查询。(6)选课管理:
11、包括学生选课系统及选课资料查询。(7)成绩管理:包括学生成绩的录入、修改及查询。(8)系统管理:包括系统使用权限的设置、系统的说明、退出系统等。高校教学管理系统需要完成以下功能高校教学管理系统需要完成以下功能10.1 系统分析与设计 10.2 数据库的设计10.2.1 数据库的需求分析(1)院系信息:院系代码和院系名称。(2)专业信息:专业代码、专业名称、所属院系代码和所属院系名称。(3)教师档案:教师编号、教师姓名、所属院系名称和所属专业名称。(4)学生档案:学号、姓名、性别、出生日期、民族、政治面貌、职务、院系、专业、班级、籍贯、电话、不及格门数和备注。(5)课程信息:课程代码、课程名称、
12、学时、学分、类别、教师编号、教师姓名、开课单位、开课时间、选课范围、内容简介、备注。(6)选课记录:学号、姓名、课程代码、课程名称和学分。(7)成绩记录:学号、姓名、课程代码、课程名称、学分和成绩。(8)操作员信息:操作员编号、操作员姓名、密码和权限。10.2.2 数据库的结构设计 高校教学管理系统的E-R图(属性略)。属于课程设置表教师档案表院系表讲授成绩学生档案表专业表属于属于选课mmnnnnn111mn10.3 系统功能概述 启动Access 2000,首先出现的是登录窗体。启动系统后,填写操作员编号和密码,单击“确定”按钮,登录到系统。在菜单栏中包含院系管理、教师档案、学生档案、课程管
13、理、选课管理、成绩管理、系统管理。10.4 创建数据表和索引10.4.1 创建表格 10.4.2 创建关系和索引 10.5 设计窗体 10.5.1 创建菜单 10.5.2 创建登录窗体 10.5.3 创建数据录入窗体 10.5.4 创建查询修改窗体 10.5.5 创建关于窗体 10.6 编码实现 10.6.1 公用模块 10.6.2 登录窗体的代码 10.6.3 数据录入窗体代码 10.6.4 查询修改窗体的代码 10.7 系统的调试及发布 完成数据库的设计后,需要对它进行性能分析,并且根据分析结果对数据库进行优化。选择“工具分析性能”菜单,系统就会启动性能分析器。第二章第二章 数据库基础知识
14、数据库基础知识 2.1 数据库与数据库系统数据库与数据库系统 2.2 关系数据库标准语言关系数据库标准语言SQL 2.3 Access 关系数据库设计关系数据库设计 2.1 数据库与数据库系统数据库与数据库系统2.1.1 数据库技术的发展数据库技术的发展 数据库技术产生于二十世纪六十年代后期 1、第一代数据库系统:网状、层次数据库2、第二代数据库系统:关系数据库系统 3、第三代数据库系统4、数据库技术的新进展 2.1.2 数据库的基本概念数据库的基本概念 数据数据:是数据库系统研究和处理的对象,本质上讲是描述事物的符号记录。数据库数据库:是数据的集合,具有一定的组织形式并被储存于计算机存储器上
15、,具有多种表现形式并可被各种用户所共享。数据库管理系统数据库管理系统:是位于用户与操作系统之间的一层数据管理软件,属于系统软件。数据库系统数据库系统:通常是指带有数据库的计算机应用系统。一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户组成。2.1.3 数据模型数据模型 数据模型有三个基本组成要素:数据结构、数据操作和完整性约束。1.1.层次模型层次模型:是用树形结构来表示数据间的从属关系结构2.2.网状模型网状模型:是层次模型的扩展,3.3.关系模型关系模型:用二维表格结构来表示实体及实体间联系。4.4.面向对象数据模型面向对象数据模型 对象与对象标识 类 事件 关系
16、模型的基本术语 关系关系:二维表结构 属性属性:二维表中的列称为属性,Access中被称为字段(Field)。域域:属性的取值范围称为域。元组元组:二维表中的行(记录的值)称为元组,Access中被称为记录(Record)。主码主码:表中的某个属性或属性组,能够唯一确定一个元组。Access中主码被称为主键。关系模式关系模式:是对关系的描述。一般表示为:关系名(属性1,属性2,属性n)2.1.4关系数据库系统关系数据库系统 1、关系模型的组成关系模型的组成关系数据结构:关系模型中数据的逻辑结构是一张二维表。关系操作:关系操作采用集合操作方式,即操作的对象和结果都是集合。关系模型中常用的关系操作
17、包括两类。查询操作:选择、投影、连接、除、并、交、差 增加、删除、修改关系完整性约束:关系模型中的完整性是指数据库中数据的正确性和一致性,包括实体完整性、参照完整性和用户定义的完整性。2 2、关系运算的基本概念、关系运算的基本概念 关系的基本运算有两类,一类是传统的集合运算:并、差、交等,另一类是专门的关系运算:选择、投影、连接等。设有两个关系R和S,它们具有相同的结构。(1)并:R和S的并是由属于R或属于S的元组组成的集合,运算符为“”,记为RS。(2)差:R和S的差是由属于R但不属于S的元组组成的集合,运算符为“”,记为RS。(3)交:R和S的交是由既属于R又属于S的元组组成的集合,运算符
18、为“”,记为RS。(4)广义笛卡儿积:关系R(假设为n列)和关系S(假设为m列)的广义笛卡儿积是一个(n+m)列元组的集合。每一个元组的前n列是来自关系R的一个元组,后m列是来自关系S的一个元组。若R有K1个元组,S有K2个元组,则关系R和关系S的广义笛卡儿积有K1K2个元组。运算符为“”,记为RS。(5)选择运算:选择运算是在关系中选择符合某些条件的元组。其中的条件是以逻辑表达式给出的,值为真的元组将被选取。(6)投影运算:投影运算是在关系中选择某些属性列组成新的关系。(7)连接运算:选择和投影运算的操作对象只是一个关系,连接运算需要两个关系作为操作对象,是从两个关系的笛卡儿积中选取属性间满
19、足一定条件的元组。最常用的连接运算有两种:等值连接(Equi Join)和自然连接(Natural Join)。3 3、关系数据库系统的功能、关系数据库系统的功能数据定义、数据处理、数据控制、数据维护4 4、关系数据库系统分类关系数据库系统分类半关系型系统、基本关系型系统、完全关系型系统 5 5、关系数据库系统、关系数据库系统ACCESSACCESSACCESS具有大型数据库的一些基本功能,支持事务处理功能,具有多用户管理功能,支持数据压缩、备份和恢复功能,能够保证数据的安全性。2 22 2 关系数据库标准语言关系数据库标准语言SQLSQLAccess的宿主宿主语言是VBA,同时支持结构化查询
20、语言SQL SQL的特点:1、SQL是一种功能齐全的数据库语言 2、SQL是高度非过程化的语言 3、SQL语言简洁,易学易用 4、语言共享 SQL的数据查询和数据操作功能 SQL语言提供SELECT语句进行数据库的查询SELECTSELECT语句的一般格式:语句的一般格式:SELECT ALL|DISTINCT,.FROM,.WHERE GROUP BY HAVING ORDER BY ASC|DESC;SELECT语句举例SELECT 课程设置表.课程代码,课程设置表.课程名称,课程设置表.学时,课程设置表.学分FROM 课程设置表WHERE(课程设置表.学分)4)ORDER BY 课程设置
21、表.学时 DESC;数据操作包括数据的插入、修改和删除。(1)插入数据INSERT INTO (,)VALUES(,)(2)修改数据UPDATE SET =,=WHERE ;(3)删除数据DELETE FROM WHERE ;23 Access 关系数据库设计关系数据库设计 2.3.1数据库关系完整性设计数据库关系完整性设计 关系模型的完整性规则是对关系的某种约束条件,是指数据库中数据的正确性和一致性。关系模型中有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称作关系的两个不变性。1 1、实体完整性规则、实体完整性规则
22、 实体完整性是指基本关系的主属性,即主码的值都不能取空值。例如在教师关系中:教师档案(教师编号,教师姓名,院系代码,专业名称)“教师编号”属性为主码,则“教师编号”不能取空值。2 2、参照完整性规则、参照完整性规则 参照完整性规则定义:设F是基本关系R的一个或一组属性,但不是关系R的主码,如果F与基本关系S的主码 Ks 相对应,则称F是基本关系R的外码。对于R中每个元组在F上的值必须为:或者取空值(F 的每个属性值均为空值);或者等于S中某个元组的主码值。例如教师档案关系和院系关系中主码分别是教师编号、院系代码,教师档案(教师编号,教师姓名,院系代码,专业名称)院系(院系代码,院系名称)按照参
23、照完整性规则,教师关系中每个元组的“院系代码”属性只能取下面两类值:空值,表示这位教师还未分配到任何一个院系工作非空值,此时取值必须和院系关系中某个元组的“院系代码”值相同,表示这个教师分配到该院系工作。3 3、用户定义的完整性、用户定义的完整性 用户定义的完整性是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。例如:在学生成绩表中规定成绩不能超过100 2.3.22.3.2数据库规范化设计数据库规范化设计 关系数据库中的关系是要满足一定要求的,满足不同程度要求的为不同范式。目前遵循的主要范式包括第一范式(1 NF)、第二范式(2 NF)、第三范式(3 NF
24、)、第四范式(4NF)等。规范化设计的过程就是按不同的范式,将一个二维表不断地分解成多个二维表并建立表之间的关联,最终达到一个表只描述一个实体或者实体间的一种联系的目标。1 1、第一范式、第一范式关系中每一个数据项必须是不可再分的,满足这个条件的关系模式就属于第一范式。关系数据库中的所有数据表都必然满足第一范式。2 2、第二范式、第二范式 在一个满足第一范式的关系中,如果所有非主属性都完全依赖于主码,则称这个关系满足第二范式。3 3、第三范式、第三范式 对于满足第二范式的关系,如果每一个非主属性都不传递依赖于主码,则称这个关系满足第三范式。2.3.3 Access数据库应用系统设计实例数据库应
25、用系统设计实例 以学生成绩管理系统为例,介绍数据库系统开发的方法。1 1、需求分析、需求分析 首先要详细调查要处理的对象,明确用户的各种要求,在此基础上确定数据库中需要存储哪些数据及系统需要具备哪些功能等。对学生成绩管理系统进行需求分析得到以下结果:用户需要完成数据的录入 完成数据的修改 实现信息查询 2 2、应用系统的数据库设计、应用系统的数据库设计 确定需要几个数据表,每一个表中包括几个字段等,然后在Access中建立数据表。学生成绩管理系统要创建八个数据表:院系表、专业表、教师档案表、学生档案表课程设置表、学生选课表、学生成绩表、操作员档案表3 3、应用系统的功能设计、应用系统的功能设计
26、学生成绩管理系统中具有八个功能模块:院系管理、专业管理、教师档案、学生档案、课程管理、选课管理、成绩管理、系统管理 4 4、系统的性能分析系统的性能分析软件初步形成后,需要对它进行性能分析,如果有不完善的地方,要根据分析结果对数据库进行优化,直到应用软件的设计满足用户的需要为止。5 5、系统的发布与维护、系统的发布与维护系统经过调试满足用户的需要后就可以进行发布,但在使用过程中可能还会存在某些问题,因此在软件运行期间要进行调整,以实现软件性能的改善和扩充,使其适应实际工作的需要。第三章第三章 建立数据库建立数据库3.1数据库的设计数据库的设计3.2创建数据库创建数据库3.3创建表创建表3.4字
27、段类型和属性字段类型和属性3.5字段编辑操作字段编辑操作3.6主键和索引主键和索引3.7表的联接表的联接3.8输入和编辑数据输入和编辑数据31数据库的设计数据库的设计 确定创建数据库的目的 确定该数据库中需要的表 确定字段 确定主键 确定表之间的关系 输入数据3.2创建数据库创建数据库 直接创建新数据库直接创建新数据库 使用菜单项使用菜单项“文件文件”中的中的“新建新建”子菜单创建新数子菜单创建新数据库据库 利用利用“数据库向导数据库向导”创建数据库创建数据库33创建表创建表 用用“表向导表向导”创建表创建表 通过输入数据方式创建表通过输入数据方式创建表 在设计图中创建表在设计图中创建表 34
28、字段类型和属性字段类型和属性 3.4.1字段类型字段类型文本、备注、数字、日期/时间、货币、自动编号、是/否、OLE 对象、超级链接、查阅向导字段类型的选择是由数据来决定。从两个方面来考虑:一是数据的类型,字段类型要和数据类型一致,数据有效范围,决定数据所需存储空间的大小;二是对数据的操作,例如可以对数值型字段进行相加操作,但不能对“是/否”类型进行加法操作。通过这两方面分析后决定所选择的字段类型。3.4.2 字段属性字段大小:字段大小:对于文本字段,该属性是允许输入数据的最大字符数。对于数字字段,将字段设置为数字型。格式:格式:可以统一输出数据的样式,如果输入数据时没有按规定样式输入,在保存
29、过程系统会自动按要求转换。输入法模式:输入法模式:输入法模式用来设置是否允许输入汉字。输入掩码:输入掩码:输入法模式用来设置字段中的数据输入格式,可以控制用户按指定格式在文本框中输入数据,输入掩码主要用于文本型和时间/日期型字段,也可以用于数字型和货币型字段。标题:标题:在“常规”窗口下的“标题”属性框中输入名称,将取代原来字段名称在表中显示。默认值:默认值:添加新记录时的自动输入值。有效性规则:有效性规则:输入数据按指定要求输入,若违反“有效性规则”,将会显示“有效性文本”设置的提示信息。有效性文本:有效性文本:当用户违反“有效性规则”时所显示的提示信息。必填字段:必填字段:此属性值为“是”
30、或“否”项。设置“是”时,表示此字段值必须输入,设置为“否”时,可以不填写本字段数据,允许此字段值为空。允许空字符串:允许空字符串:该属性仅用来设置文本字段,属性值也为“是”或“否”项,设置为“是”时,表示该字段可以填写任何信息。索引索引:设置索引有利于对字段的查询,分组和排序,此属性用于设置单一字段索引。UNICODEUNICODE压缩压缩:在 Unicode 中每个字符由两个而不是一个字节代表。在一个字节中存储的每个字符的编码方案将用户限制到单一的代码页(包含最多有 256 个字符的编号集合)。35字段编辑操作字段编辑操作 添加字段 更改字段 移动字段 删除字段 3 36 6主键和索引主键
31、和索引 主键主键:唯一标识表中每一行数据。主键的基本类型有三种:(1)自动编号主键)自动编号主键(2 2)单字段主键)单字段主键 (3 3)多字段主键)多字段主键 设置或更改主键设置或更改主键 (1 1)定义主键)定义主键 (2 2)删除主键)删除主键 索引索引 索引字段可以是“文本类型”、“数字类型”、“货币类型”、“日期/时间类型”,主键字段自动索引,但OLE对象,备注字段等不能设置索引。创建单字段索引 创建多字段索引 3 37 7表的联接表的联接 3.7.1 定义表之间的关系定义表之间的关系一对一关系、一对多关系、多对多关系 3.7.2 编辑关系编辑关系 1联接类型:内部联接、左外部联接
32、、右外部联接 2编辑关系 3.7.33.7.3参照完整性定义参照完整性定义 参照完整性是一个规则系统,Microsoft Access 使用这个系统用来确保相关表中记录之间关系的有效性,并且不会意外地删除或更改相关数据。在符合下列全部条件时,用户可以设置参照完整性 来自于主表的匹配字段是主键或具有唯一索引。相关的字段都有相同的数据类型。两个表都属于同一个 Access 数据库。3.8 3.8 输入和编辑数据输入和编辑数据3.8.1 3.8.1 数据的输入数据的输入 直接输入数据 获取外部数据 3.8.2 3.8.2 编辑记录编辑记录 添加记录 删除记录 复制记录 筛选记录 排序记录 查找和替换
33、 3.8.3 调整表的外观1改变字段次序2调整字段显示宽度和高度3隐藏列和显示列4冻结列 5设置数据表格式 6改变字体显示 第四章第四章 创建和使用查询创建和使用查询 4.1 查询简介4.2 查询视图4.3 使用查询向导创建查询4.4 对查询进行编辑4.5 选择查询4.6 计算查询4.7 参数查询4.8 操作查询4.9 SQL查询 查询是关系数据库中的一个重要概念,查询对象不是数据的集合,而是操作的集合。可以这样理解,查询是针对数据表中数据源的操作命令。每次打开查询,就相当于重新按条件进行查询。在Access数据库中,查询是一种统计和分析数据的工作,是对数据库中的数据进行分类、筛选、添加、删除
34、和修改。4.1 查询简介查询简介Access的查询可以分为以下几种类型:的查询可以分为以下几种类型:选择查询:选择查询:这种查询检索满足特定条件的数据。从一个或多个表中获取数据并显示结果。计算查询:计算查询:通过查询操作完成基表内部或各基表之间数据的计算。参数查询:参数查询:在运行实际查询之前弹出对话框,提示用户输入查询准则,系统将以该准则作为查询条件,将查询结果按指定的形式显示出来。操作查询:操作查询:仅在一个操作中更改许多记录的一种查询。操作查询分为四种类型:删除、追加、更改与生成表。SQL查询:查询:这种查询需要一些特定的SQL命令,这些命令必须写在SQL视图中(SQL查询不能使用设计视
35、图)。4.2 查询视图查询视图 4.2.1 数据表视图数据表视图 4.2.2 设计视图设计视图 4.2.3 SQL视图视图4.2.14.2.1 数据表视图数据表视图 4.2.2 设计视图设计视图 设计视图设计视图字段:查询所需要的字段。每个查询至少包括一个字段,也可以包含多个字段。表:指定查询的数据来源表或查询排序:指定查询的结果是否进行排序。排序方式包括“升序”、“降序”和“不排序”三种。条件:指定用户用于查询的条件或要求。4.2.3 SQL视图视图4.3 使用查询向导创建查询使用查询向导创建查询 使用查询向导可以方便的完成以下查询:1)简单查询向导2)交叉表查询向导3)查找重复项查询向导4
36、)查找不匹配项查询向导 4.3.1 简单查询向导简单查询向导 使用简单查询向导创建查询的操作步骤如下:1)在“数据库”窗口中,单击“对象”下的“查询”选项。2)在“查询”选项卡中单击“新建”按钮,打开“新建查询”对话框3)在“新建查询”对话框中单击“简单查询向导”选项,然后单击“确定”按钮,打开“简单查询向导”对话框4)选择查询中要使用的字段:在“表/查询”框中选择要作为查询数据来源的表或查询名;在“可用字段”中双击要用的字段名,双击后字段将会添加到“选定字段”框中。5)单击“下一步”按钮,打开简单查询向导的“完成”对话框。在对话框中指定查询的标题,输入查询名。6)单击“完成”按钮,完成该查询
37、的创建过程。4.3.2 交叉表查询向导交叉表查询向导 1)在“查询”选项卡中,单击“数据库”窗口工具栏上的“新建”按钮,打开“新建查询”对话框。2)选择“交叉表查询向导”选项,然后单击“确定”按钮,打开“交叉表查询向导”对话框。3)在“视图”选项组中,选择“表”;在“请指定哪个表或查询中含有交叉表查询结果所需的字段”列表框中,选择“学生档案表”。4)单击“下一步”按钮,在“可用字段”框中选择“院系”作为交叉表中要用的行标题。5)单击“下一步”按钮,在这个对话框中选择“性别”作为列标题。6)单击“下一步”按钮,确定为每个列和行的交叉点计算出什么数字。在“字段”框中选择“学号”,在“函数”框中选择
38、“计数”,7)单击“下一步”按钮,在出现的对话框中输入交叉表的名字“学生档案表_交叉表”。4.3.3 查找重复项查询向导查找重复项查询向导 根据“查找重复项”查询的结果,可以确定在表中是否有重复的记录,或记录在表中是否共享相同的值。例如,可以搜索姓名字段中的重复值来确定同名学生是否为重复记录。4.3.4 查找不匹配项查询向导查找不匹配项查询向导 使用“查找不匹配项查询向导”,可以在表中查找与其它记录不相关的记录。4.3.5 查询准则 准则:是指在查询中用来限制检索记录的条件表达式,它是算术运算符、逻辑运算符、常量、字段值和函数等的组合。1简单准则表达式 字符型 数字型 表示空字段值 2操作符
39、比较操作符 字符运算符 逻辑运算符 3函数 逻辑运算符操作符形式含义And And限制字段值必须同时满足和Or Or 限制字段值只要满足和中的一个即可NotNot限制字段值不能满足的条件函数说明Abs(数值表达式)返回数值表达式值的绝对值Int(数值表达式)返回数值表达式值的整数部分Srq(数值表达式)返回数值表达式值的平方根Sgn(数值表达式)返回数值表达式的符号值。当数值表达式值大于0时返回值为1;当数值表达式值等于0时返回值为0;当数值表达式值小于0时返回值为-1数值函数数值函数 字符函数函数说明Space(数值表达式)返回由数值表达式的值确定的空格个数组成的空字符串String(数值表
40、达式,字符表达式)返回由字符表达式的第1个字符重复组成的长度为数值表达式值的字符串Left(字符表达式,数值表达式)返回从字符表达式左侧第1个字符开始长度为数值表达式值的字符串Right(字符表达式,数值表达式)返回从字符表达式右侧第1个字符开始长度为数值表达式值的字符串Len(字符表达式)返回字符表达式的字符个数Mid(字符表达式,数值表达式1,数值表达式2)返回从字符表达式中第数值表达式1个字符开始,长度为数值表达式2个的字符串。数值表达式2可以省略,若省略则表示从第数值表达式1个字符开始直到最后一个字符为止日期/时间函数函数说明Day(date)返回给定日期131的值。表示给定日期是一个
41、月中的哪一天Month(date)返回给定日期112的值。表示给定日期是一年中的哪个月Year(date)返回给定日期1009999的值。表示给定日期是哪一年Weekday(date)返回给定日期17的值。表示给定日期是一周中的哪一天Hour(date)返回给定小时023的值。表示给定时间是一天中的哪个钟点Date()返回当前的系统日期统计函数函数说明Sum(字符表达式)返回字符表达式中值的总和。字符表达式可以是一个字段名,也可以是一个含字段名的表达式,但所含字段应该是数字数据类型的字段Avg(字符表达式)返回字符表达式中值的平均值。字符表达式可以是一个字段名,也可以是一个含字段名的表达式,但
42、所含字段应该是数字数据类型的字段Count(字符表达式)返回字符表达式中值的个数。字符表达式可以是一个字段名,也可以是一个含字段名的表达式,但所含字段应该是数字数据类型的字段Max(字符表达式)返回字符表达式中值的最大值。字符表达式可以是一个字段名,也可以是一个含字段名的表达式,但所含字段应该是数字数据类型的字段Min(字符表达式)返回字符表达式中值的最小值。字符表达式可以是一个字段名,也可以是一个含字段名的表达式,但所含字段应该是数字数据类型的字段使用文本值作为准则示例字段名称准则功能院系信息技术学院查询院系为信息技术学院的记录课程名称Like 计算机*查询课程名称以“计算机”开头的记录民族
43、Not 汉查询所有民族不是汉族的记录姓名In(海楠,王平)或海楠 or 王平查询姓名为海楠或王平的记录姓名Left(姓名,1)=王 查询所有姓王的记录学号Mid(学号,3,2)=04 查询学号第3位和第4位为04的记录使用处理日期结果作为准则示例字段名称准则功能出生日期Between#1980-1-1#And#1984-12-31#或Year(出生日期)=1980查询1980年出生的记录出生日期Month(出生日期)=Month(Date()查询本月出生的记录出生日期Month(出生日期)=1980 And Day(出生日期)=4查询1980年4月出生的记录工作时间Date()-20查询20天
44、内参加工作的记录4.4 对查询进行编辑4.4.1 编辑查询中的字段 1增加字段 2删除字段 3移动字段 4在查询中修改字段的标题 5改变字段顺序 4.4.2 运行查询 4.4.3 排序查询的结果 4.5 选择查询选择查询选择查询是Access支持的多种类型查询对象中最常见、最重要的一种,它从一个或多个表中根据准则检索数据,它的优点在于能将一个或多个表中的数据集合在一起。例如,查找单科成绩大于85分的学生记录,并显示学生所在院系、学号、姓名。4.6 计算查询计算查询 1创建计算查询在建立查询时,有时可能关心查询记录,有时可能关心记录的计算结果。通过查询操作完成表内部或各表之间数据的运算,是建立查
45、询对象的一个常用的功能。完成计算操作是通过在查询的对象中设计计算查询列实现的。下面以院系统计学生人数为例介绍计算查询的创建过程。2修改显示标题 3添加计算字段4.7 参数查询参数查询 参数查询是动态的,它利用对话框提示用户输入参数并检索符合所输入参数的记录或值。要创建参数查询,必须在查询列的“条件”单元格中输入参数表达式(括在方括号中),而不是输入特定的条件。运行该查询时,Access将显示包含参数表达式文本的参数提示框。4.8操作查询操作查询 有4种类型的操作查询:更新查询:替换现有数据。追加查询:在现有表中添加新记录。删除查询:从现有表中删除记录。生成表查询:创建新表。4.8.1 保护数据
46、保护数据 创建表的备份操作步骤如下:1、单击数据库窗口的表,按Ctrl+C键。2、按Ctrl+V键,Access会显示“粘贴表方式”对话框。3、在备份的表指定新表名。4、选中“结构和数据”选项,然后单击“确定”按钮将新表添加到数据库窗口中,此备份的表和原表完全相同。4.9 SQL4.9 SQL查询查询 SQL是Structure Query Language的缩写,即“结构化查询语言”。当今的所有关系型数据库管理系统都是以SQL作为核心的。单纯的SQL语言所包含的语句并不多,但在使用的过程中需要大量输入各种表、查询和字段的名字。使用SQL查询创建的查询有以下4种:联合查询、传递查询、数据定义查
47、询和子查询。SELECT语句:其只要功能是实现数据源数据的筛选、投影和连接操作,并能够完成筛选字段重命名、对数据源数据组合、分类汇总、排序等具体操作,具有非常强大的数据查询功能。SELECTSELECT的语法的语法SELECTpredicateSELECTpredicate*|table.|table.*|table.field1AS alias|table.field1AS alias ,table.field2AS alias2,table.field2AS alias2,FROM FROM tableexpression,tableexpression,IN extrnaldatabas
48、eIN extrnaldatabaseWHEREWHERE GROUP BYGROUP BY HAVINGHAVING ORDER BYORDER BY;SELECT语句举例SELECT 课程表.课程代码,课程表.课程名称,课程表.学时,课程表.学分FROM 课程表WHERE(课程表.学分)2)ORDER BY 课程表.学时 DESC;联合查询联合查询:可以将两个或多个表(查询)中的字段合并到一个查询结果中。执行联合查询时,将返回所包含的表或查询中对应字段的记录。Select 学号,姓名From 学生表1Union select 学号,姓名From 学生表2注意:(1)要为两个SELCET语句
49、以相同的顺序指定相同的字段SQL语句的列数相同,并且相应的列的数据类型相同,。此时,Access不会关心每个列的名称。当列的名称不相同时,查询会使用来自第一个SELECT语句的名称。(2)如果不要返回重复记录,可以输入带有UNION运算的SQL SELECT语句;如果要返回重复记录,需要输入带有UNION ALL运算的SQL SELECT语句。(3)如果要在联合查询中指定排序,应在最后一个SELECT语句的末端添加一个ORDER BY从句。传递查询传递查询 Access传递查询可直接将命令发送到ODBC数据库服务器。使用传递查询,不必连接到服务器上的表,就可直接使用相应的表。数据定义查询数据定
50、义查询 数据定义查询是SQL的一种特定查询。使用数据定义查询可以在数据库中创建或更改对象。CREATE TABLE:创建表。CREATE TABLE语句不会覆盖已经存在的同名表,如果表已经存在,会返回一个错误消息,并取消这一任务。DROP:从数据库中删除表,或者从字段或字段组中删除索引。CREATE INDEX:为字段或字段组创建索引。CREATE INDEX 索引名称ON 表(字段);为了避免索引字段的重复,添加如下各式的UNIQUE保留字:CREATE UNIQUE INDEX 索引ON 表(字段);要指明索引字段是主键,使用如下格式的PRIMARY保留字:CREATE INDEX 索引O