版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第1章 数据库基础目 录1.1 信息、数据与数据处理1.2 数据管理技术的发展1.3 数据库系统的组成1.4 数据库系统的特点1.5 数据库系统的内部体系结构1.6 数据模型1.7 关系数据库1.8 数据库设计步骤1.1 信息、数据与数据处理信息是现实世界在人们头脑中的反应。它以文字、数值、符号、图像和声音等形式记录下来。数据是指那些可以被计算机接受和处理的信息。数据是信息的载体,信息是数据的内涵。数据只有经过解释才有意义,成为信息。例如,“长城”“40”只是单纯的数据,没有具体意义,而“长城的门票是40元”就是一条有意义的信息。数据处理就是把数据加工处理成为信息的过程,而数据处理的核心问题就
2、是数据管理。1.2 数据管理技术的发展数据管理技术伴随着计算机硬件技术和软件技术的发展而发展,经历了三个发展阶段。人工管理文件系统数据库系统人工管理阶段应用程序与数据的关系时间:20世纪50年代中期以前背景:计算机主要用于科学计算特点:数据不保存;一组数据对应一个程序计算机没有数据管理功能,程序和数据编写在一起,每个程序都有自己的数据,不能共享,数据冗余度很大。人工管理采用人工管理方式的C 语言程序示例分别编写程序求出10个整数的最大值和最小值 从这个例子可以看出,在人工管理阶段,程序和数据是不可分割的整体。每个程序都有自己的数据,无法实现数据共享。文件系统阶段应用程序与数据的关系时间:60年
3、代中期 背景:计算机已大量用于管理。特点:数据可长期保存;程序与数据具有一定的独立性。文件系统数据以文件形式存储,由操作系统统一管理,具有一定的独立性。但文件的读写依赖于程序,共享有局限性。采用文件系统管理方式的C 语言程序示例分别编写程序求出10个整数的最大值和最小值从这个例子可以看出,由于文件中只保存了数据,并未存储数据的结构信息,导致读取文件数据的操作必须在程序中实现,从而使程序与数据之间的独立性仍然有局限性。数据库系统阶段应用程序与数据的关系时间:60年代后期背景:计算机广泛应用于各个领域,数据共享要求越来越强。特点:面向全组织的复杂的数据结构;数据冗余度小、易扩充;数据独立性高;数据
4、统一管理。数据库系统数据库中保存了数据及其结构信息,程序不用考虑数据的存取问题,具体的工作由数据库管理系统完成。真正实现了数据的独立和共享。采用数据库系统管理方式的示例分别求出10个整数的最大值和最小值求最大值的标准化查询语句为Select Max(Num) From data求最小值的标准化查询语句为Select Min(Num) From data 从这个例子可以看出,数据库中不仅保存了数据,还保存了数据表的结构信息(如列名称Num),程序中可以不用考虑数据的存取问题,具体的工作由数据库管理系统完成,数据真正实现了独立和共享。1.3 数据库系统的组成除了计算机硬件系统和操作系统外,一般由4
5、个部分组成:数据库数据库管理系统应用程序相关人员数据库管理员应用程序开发人员最终用户1. 数据库数据库(DataBase,DB) 可直观地理解为存放数据的仓库,它是按照一定方式组织起来的有联系、可共享的数据集合。能够被多个用户共享,并独立于应用程序。2. 数据库管理系统数据库管理系统(DataBase Management System,DBMS)基本功能: 数据定义(DDL) 数据操纵(DML) 数据库运行控制(DCL) 数据库维护 数据库通信3. 应用程序应用程序是指利用各种开发工具开发的满足特定应用环境的程序。如,以数据库为基础学生成绩管理系统、财务管理软件、火车票订票系统等。4. 相关
6、人员数据库管理员(DataBase Administrator,DBA)负责确定数据库的存储结构和存取策略,定义数据库的安全性要求和完整性约束条件,监控数据库的使用和运行。应用程序开发人员负责应用程序的需求分析、数据库概要设计,编写访问数据库的应用程序。最终用户通过应用程序的接口或数据库查询语言访问数据库。1.4 数据库系统的特点1数据结构化数据库系统实现了整体数据的结构化,而且数据库中的数据不再仅针对某个应用,而是面向整体。2数据共享性高且冗余度低因为数据是面向整体的,所以数据可以被多个用户、多个应用程序共享,大大减少冗余。3数据独立性高数据独立性是指数据和应用程序之间的独立性。把数据的定义
7、从程序中分离出去,使开发人员可以把精力放在应用程序的编写上,从而大大减少应用程序的维护和修改。4数据由DBMS统一管理和控制 DBMS 必须保证数据库中数据的安全可靠和正确有效。1.5 数据库系统的内部体系结构三级模式和二级映射结构1. 数据库系统的三级模式(1)外模式。也称为子模式或用户模式,它是数据库用户(包括应用程序开发人员和最终用户)能够看见和使用的局部数据逻辑结构的描述,是与某一应用程序相关数据的逻辑表示。(2)概念模式。也称为逻辑模式,它是数据库中全局数据逻辑结构的描述,是所有用户(或应用程序)的公共数据视图。它不涉及具体的硬件环境与平台,也与具体的软件环境无关。针对不同的用户需求
8、,一个概念模式可以有若干个外模式。(3)内模式。又称为存储模式或物理模式,它是对数据库物理结构和存储方法的描述,是数据在存储介质上的保存方式。内模式对一般用户是透明的,通常不需要关心内模式的具体实现细节,但它的设计会直接影响到数据库的性能。2. 数据库系统的二级映射(1)外模式到概念模式的映射外模式反应了用户对数据的要求,是局部模式;概念模式反应了设计者的数据全局逻辑要求,是数据的全局模式。当概念模式发生改变时,由数据库管理员负责改变相应的映射关系,从而使外模式保持不变,也就没有必要修改应用程序,保证了数据的逻辑独立性。(2)概念模式到内模式的映射概念模式到内模式的映射定义了数据的全局逻辑结构
9、与物理存储结构间的对应关系。当数据库的存储结构发生改变时,由数据库管理员负责改变相应的映射关系,可以使概念模式保持不变,从而保证了数据的物理独立性。1.6.1 数据模型中的相关概念数据模型是描述数据库中数据的组织形式,是数据库设计的核心。1. 实体2. 属性3. 实体集4. 实体之间的联系5. E-R图1. 实体客观存在并可相互区别的事物称为实体。实体可以是具体的人、事、物,也可以是抽象的概念或联系。如,一个学生,一名教师,一门课程,一本书、一场比赛等。2. 属性描述实体的特性称为属性。一个实体可以由若干个属性来刻画,如一个学生实体有学号、姓名、性别、出生日期、班级等方面的属性。属性的具体取值
10、称为属性值。例如,某一个男学生实体的“性别”属性的属性值应是“男”。3. 实体集同类型实体的集合称为实体集。例如,对于“学生”实体来说,全体学生就是一个实体集;对于“课程”实体来说,学校开设的所有课程也是一个实体集。4. 实体之间的联系实体之间的联系是指两个不同实体集之间的联系。 一对一联系(1:1)实体集A中的一个实体最多与实体集B中的一个实体相对应,反之亦然。例如,班级和班长两个实体集,一个班级只有一位班长,而一个班长也只能管理一个班级。 一对多联系(1:n)对于实体集A中的一个实体,实体集B中有多个实体与之对应;反之,对于实体集B中的每一个实体,实体集A中最多只有一个实体与之对应。例如,
11、班级和学生两个实体集,一个班级可以有多个学生,而一个学生只能属于一个班级。 多对多联系(m:n)对于实体集A中的每一个实体,实体集B中有多个实体与之对应;反之,对于实体集B中的每一个实体,实体集A中也有多个实体与之对应。例如,学生和课程两个实体集,一个学生可以选修多门课程,而一门课程也可以被多名学生选修。5. E-R图E-R(Entity-Relationship,实体-联系)图是描述实体及实体之间的联系的一种方法。(1)实体:用矩形表示(2)属性:用椭圆表示(3)联系:用菱形表示1.6.2 数据模型分类传统的数据模型有3种:1. 层次模型2. 网状模型3. 关系模型1. 层次模型按照层次结构
12、的形式组织数据,易于实现实体间的一对多联系,用树形结构表示,具有两个特点:(1)有且仅有一个根结点(没有父结点的结点)。(2)除根结点之外的其他结点有且只有一个父结点。2. 网状模型按照网状结构组织数据,易于实现实体间多对多的联系,具有两个特点:(1)允许一个以上的结点没有父结点。(2)一个结点可以有多个父结点。3. 关系模型关系模型是用二维表格来表示实体集以及实体之间联系的模型。1.7.1 关系模型的基本术语1. 关系2. 属性(字段)3. 元组(记录)4. 分量5. 域6. 主关键字7. 外部关键字1. 关系关系是满足关系模型基本性质的二维表格,一个关系就是一张二维表格。对关系的描述称为关
13、系模式,一般格式为: 关系名(属性名1,属性名2,属性名n)课程表(课程编号,课程名称,学时,学分,开课状态,课程大纲)2. 属性(字段)二维表格中的一列称为一个属性,每一列都有一个属性名。在Access中将一列称为一个字段,每个字段都有字段名称。3. 元组(记录)二维表格中的一行称为一个元组,在Access中称为记录。4. 分量记录中的一个字段值称为一个分量。关系模型要求每一个分量必须是不可分的数据项,即不允许表中还有表。5. 域字段的取值范围称为域。例如,成绩字段的值只能在0,100的范围。6. 主关键字关系中能够唯一标识一条记录的字段集(一个字段或几个字段),也称为主键或主码。学生表中“
14、学号”字段可以是主关键字课程表中“课程编号”字段可以是主关键字选课成绩表中,一个学生可以选修多门课程,但是学号和课程编号可以唯一确定一个学生某门课程的成绩,因此可以将它们组合在一起成为主关键字。7. 外部关键字如果一个字段集(一个字段或几个字段)不是所在关系的主关键字,而是另一个关系的主关键字,则该字段集称为外部关键字,也称为外键或外码。 在选课成绩表中,“学号”字段就是一个外部关键字,“课程编号”字段也是一个外部关键字。1.7.2 关系的基本性质一个关系就是一张二维表格,但并不是所有的二维表格都是关系,关系应具有以下7个性质:(1)元组(记录)个数有限。(2)元组(记录)均各不相同。(3)元
15、组(记录)次序可以交换。(4)元组(记录)的分量是不可分的基本数据项。(5)属性(字段)名各不相同。(6)属性(字段)次序可以交换。(7)属性(字段)分量具有与该属性相同的值域。由关系的性质可知,二维表格的每一行都是唯一的,而且每一列的数据类型都是相同的。1.7.3 关系完整性约束域完整性是保证关系中每个字段取值的合理性。如字段的数据类型、值域范围、是否允许空值等。实体完整性是指关系的主关键字不能重复也不能取空值,因此主关键字中的每一个字段值都不能为空值。参照完整性是建立在两个关系上的约束条件。参照完整性要求一个关系中外部关键字的取值只能是与其关联的关系中主关键字的值或空值。用户定义完整性是根
16、据应用环境的要求和实际的需要,对某一具体应用所涉及的数据提出约束性条件。1.7.4 关系规范化目前主要有6种范式:第一范式(1NF): 1NF是最基本的规范形式,它要求关系中的每一个属性值都必须是不可再分割的数据项。 1NF是对关系模式的基本要求,不满足1NF的数据库就不是关系数据库。第二范式(2NF)第三范式(3NF)BCNF范式(BCNF)第四范式(4NF)第五范式(5NF)1.7.5 关系运算关系运算的结果也是一个关系。1. 传统的集合运算2. 专门的关系运算(1)并(2)交(3)差(4)广义笛卡儿积(1)选择(2)投影(3)连接(4)除(1) 并运算R和S是两个结构相同的关系,则R和S
17、两个关系的并运算可以记作RS,运算结果是将两个关系的所有元组组成一个新的关系,若有相同的元组只保留一个。(2)交运算R和S是两个结构相同的关系,则R和S两个关系的交运算可以记作RS,运算结果是将两个关系中的公共元组组成一个新的关系。 (3) 差运算R和S是两个结构相同的关系,则R和S两个关系的差运算可以记作R-S,运算结果是将属于R但不属于S的元组组成一个新的关系。 4. 广义笛卡儿积运算假设R和S是两个结构不同的关系,R有m个属性,i个元组;S有n个属性,j个元组。则两个关系的广义笛卡儿积可以记作RS,运算结果是一个具有m+n个属性,ij个元组的关系。RABx1y3SCDEm84n96RSA
18、BCDEx1m84x1n96y3m84y3n96(4) 广义笛卡儿积运算1.7.5 关系运算关系运算的结果也是一个关系。1. 传统的集合运算2. 专门的关系运算(1)并(2)交(3)差(4)笛卡儿积(1)选择(2)投影(3)连接(4)除(1) 选择运算从指定关系中选择出满足给定条件的元组组成一个新的关系。 (2) 投影运算从指定关系中选择出某些属性组成一个新的关系。(3) 连接运算连接运算是关系的横向结合,它把两个关系中满足连接条件的元组组成一个新的关系,通常记作:RS。内连接的运算结果仅包含符合连接条件的元组,主要有: 等值连接 不等连接 自然连接外连接的运算结果不仅包含符合连接条件的元组,
19、同时也会包含不符合连接条件的元组,主要有: 左外连接 右外连接 全外连接 等值连接等值连接就是从关系R和S的笛卡儿积中选取满足等值条件的元组组成一个新的关系。运算结果包含两个关系的所有属性,也包括重复的属性。例如,等值条件为:R的B列 = S的B列RABx1y3SBCD1m412n65RS(笛卡儿积)A(R)B(S)BCDx11m41x12n65y31m41y32n65RS(等值连接)A(R)B(S)BCDx11m41 等值连接例如,将等值条件设置为关系R和S的学号属性值相等。 不等连接不等连接就是从关系R和S的笛卡尔积中选取满足不等条件的元组组成一个新的关系。可以使用比较运算符(、=、=、)
20、,运算结果同样包含两个关系的所有属性,也包括重复的属性。 例如,不等条件为:R的B列 S的B列RABx1y3SBCD1m412n65RS(笛卡儿积)A(R)B(S)BCDx11m41x12n65y31m41y32n65RS(R的B列 S的B列)A(R)B(S)BCDy31m41y32n65 不等连接例如,不等条件为: R的学号 S的学号 自然连接自然连接是按照公共属性值相等的条件进行连接,要求两个关系中必须有相同的属性,运算结果就是从关系R和S的笛卡尔积中选取公共属性满足等值条件的元组,并且在结果中消除重复的属性。例如,关系R和S的自然连接,公共属性B列相等。RABx1y3SBCD1m412n
21、65RS(笛卡儿积)A(R)B(S)BCDx11m41x12n65y31m41y32n65RS(自然连接)ABCDx1m41 自然连接例如,关系R和S的自然连接,公共属性学号列相等。(3) 连接运算连接运算是关系的横向结合,它把两个关系中满足连接条件的元组组成一个新的关系,通常记作:RS。内连接的运算结果仅包含符合连接条件的元组,主要有: 等值连接 不等连接 自然连接外连接的运算结果不仅包含符合连接条件的元组,同时也会包含不符合连接条件的元组,主要有: 左外连接 右外连接 全外连接 左外连接左外连接是在自然连接的基础上,保留左边关系R中要舍弃的元组,同时将右边关系S对应的属性值用Null代替。
22、RABx1y3SBCD1m412n65RS(左外连接)ABCDx1m41y3NullNullRS(自然连接)ABCDx1m41 左外连接 右外连接右外连接是在自然连接的基础上,保留右边关系S中要舍弃的元组,同时将左边关系R对应的属性值用Null代替。RABx1y3SBCD1m412n65RS(自然连接)ABCDx1m41RS(右外连接)ABCDx1m41Null2n65 右外连接 全外连接全外连接是在自然连接的基础上,同时保留关系R和S中要舍弃的元组,但将其他属性值用Null代替。RABx1y3SBCD1m412n65RS(自然连接)ABCDx1m41RS(全外连接)ABCDx1m41y3nu
23、llnullNull2n65 全外连接(4) 除运算关系R和S的除运算表示为RS。除运算的结果也是一个关系,该关系的属性由R中除去S中的属性之外的属性组成,元组由R与S中在所有相同属性上有相等值的那些元组组成。关系R和S的除运算应该满足条件:关系S的属性全部包含在关系R中,且关系R中存在关系S中没有的属性。(4) 除运算例如,将学生选课表R与所有课程S进行除运算,目的是找出选修了所有课程的学生。1.8 数据库设计步骤第2章 数据库的设计与创建目录2.1 Access 2016的工作环境2.2 Access数据库设计2.3 Access 2016数据库的创建2.4 Access 2016数据库的
24、对象2.5 Access 2016数据库的视图模式2.6 Access 2016数据库的操作2.1 Access 2016的工作环境1Access 2016 启动屏幕通过Windows开始菜单启动Access 2016后看到的屏幕2.1 Access 2016的工作环境2Access 2016数据库窗口创建或打开一个数据库后进入到数据库窗口。2.1 Access 2016的工作环境3Backstage 视图窗口实际上就是Access 2016 的“文件”选项卡。2.2.1 Access数据库设计步骤1234需求分析确定应用系统的目标、功能以及所涉及到的数据。5确定数据库需要建立的表和各表包含的
25、字段及主键确定表之间的联系优化设计应用规范化理论对表设计进行检查,以减少冗余。在数据库中创建表及其他相关的对象2.2.2 “学生成绩管理”数据库设计实例1. 需求分析“学生成绩管理”数据库系统的主要任务之一就是能够打印出学生的成绩单,所以学生成绩单中需要的各项数据都必须能够从“学生成绩管理”数据库中获得。例如:学号、姓名、班级、院系名称、每门课程的名称、学分、成绩、学年、学期等。2.2.2 “学生成绩管理”数据库设计实例2.确定数据库需要建立的表和各表包含的字段及主键(1)概念设计根据需求分析,学生成绩管理系统中的实体应该包括院系、学生和课程3个实体,给出各实体及联系的E-R图。(2)逻辑设计
26、 将各实体及联系的E-R图转换为关系模式。“学生成绩管理”各实体及联系的E-R图“学生成绩管理”各实体及联系的关系模式(1)院系实体转化为院系代码表(主键:院系代码)院系代码表(院系代码,院系名称,院系网址)(2)学生实体转化为学生表(主键:学号 外键:院系代码)学生表(学号,姓名,性别,出生日期,政治面貌,班级,院系代码,入学总分,奖惩情况,照片)(3)课程实体转换为课程表(主键:课程编号)课程表(课程编号,课程名称,学时,学分,开课状态,课程大纲)(4)学生与课程之间的多对多联系转换为选课成绩表(主键:学号+课程编号 外键:学号,课程编号 )选课成绩表(学号,课程编号,成绩,学年,学期)2
27、.2.2 “学生成绩管理”数据库设计实例3确定表之间的联系(1)院系代码表与学生表之间是一对多联系,即一个院系可以有多个学生,而一个学生只能属于一个院系。两个表之间通过“院系代码”字段进行关联。(2) 学生表与选课成绩表之间是一对多联系,即一个学生可以有多门课程的修课成绩,而选课成绩表中的每一个修课成绩都只能是某一个学生的。两个表之间通过“学号”字段进行关联。(3) 课程表与选课成绩表之间是一对多联系,即一门课程可以有多个学生的修课成绩,而选课成绩表中每一个学生该门课程只能有一个成绩。两个表之间通过“课程编号”字段进行关联。2.2.2 “学生成绩管理”数据库设计实例4优化设计应用规范化理论对表
28、模式进行检查,由于遵循了概念单一化的原则,从目前情况看,这4个表的设计是规范化的,满足第一范式(1NF)的要求,每一个属性值都是不可再分割的数据项。2.2.2 “学生成绩管理”数据库设计实例5在数据库中创建表及其他相关的对象创建数据库是对数据库进行管理的基础,只有在建立数据库的基础上,才能根据实际需要创建表、查询、窗体、报表、宏和模块等数据库对象,实现对数据的管理。2.3 Access 2016数据库的创建1空白桌面数据库桌面数据库是在个人计算机上使用的数据库。空白桌面数据库中没有任何数据,只是创建好了一个能够容纳数据的容器。2.3 Access 2016数据库的创建1空白桌面数据库桌面数据库
29、是在个人计算机上使用的数据库。空白桌面数据库中没有任何数据,只是创建好了一个能够容纳数据的容器。2.3 Access 2016数据库的创建2自定义Web应用程序自定义Web应用程序是需要通过SharePoint发布的Access应用程序,属于在互联网中利用浏览器以Web查询接口方式访问的数据库资源。2.3 Access 2016数据库的创建3使用模板创建数据库模板是Access预先设计的数据库,它们含有专业设计的表、查询、窗体、报表、宏和模块,可以为创建新数据库提供极大的便利。2.3 Access 2016数据库的创建3使用模板创建数据库利用“联系人”模板创建的数据库2.4 Access 20
30、16数据库的对象Access 2010数据库包含表、查询、窗体、报表、宏和模块等6类对象,利用这些对象可以完成对数据库中数据的管理。“联系人管理数据库”中的表“联系人管理数据库”中的查询“联系人管理数据库”中的窗体“联系人管理数据库”中的报表“联系人管理数据库”中的宏“联系人管理数据库”中的模块2.5 Access 2016数据库的视图模式不同的数据库对象有不同的视图模式,打开一个数据库对象后,可以选择“开始”选项卡最左边的“视图”命令来切换视图模式。查询对象的视图模式1. 设计视图表、查询、窗体、报表、宏和模块等6类对象都有设计视图,不同的数据库对象具有不同的设计视图。在查询的设计视图中可以
31、设置查询条件以及查询结果的排序方式等。2. 数据表视图只有表、查询和窗体3种对象具有数据表视图。主要用于编辑和显示当前数据库中的数据,数据的录入、修改、删除等操作都是在数据表视图中进行的。3. SQL视图在Access数据库中,只有查询具有SQL视图。在SQL视图中用户可以直接输入查询命令来创建查询。2.6 Access 2016数据库的操作1数据库的打开方式2压缩和修复数据库3. 设置数据库打开密码4. 备份数据库5. 生成ACCDE文件1. 数据库的打开方式(1)打开。默认的打开方式。网络上的其他用户也可以同时打开和使用这个数据库文件,并对数据库进行编辑。(2)以只读方式打开。只能查看数据
32、库中的对象,不可以对数据库进行修改。(3)以独占方式打开。可以防止网络上其他用户同时访问这个数据库文件。(4)以独占只读方式打开。可以防止网络上其他用户同时访问这个数据库文件,而且不可以对数据库进行修改。2. 压缩和修复数据库目的:重新组织数据库文件的存储方式,以提高数据库的访问性能;修复数据库的部分损坏信息。(1)关闭数据库时自动执行压缩和修复数据库单击“文件”选项卡“选项”命令,在“Access选项”对话框进行设置。(2)手动压缩和修复数据库单击“文件”选项卡“信息”命令,再单击右侧的“压缩和修复数据库”按钮,系统将完成数据库的压缩和修复的工作。3. 设置数据库打开密码设置密码后,只有知道
33、密码的用户才可以打开数据库。操作步骤: 以独占方式打开需要设置打开密码的数据库。 在“文件”选项卡的Backstage视图中,单击左边的“信息”命令,然后再单击右侧的“用密码进行加密”按钮4. 备份数据库备份数据库是最常用的安全措施之一。如果正在运行的数据库受到损坏导致不可读,那么用户可以通过备份数据库进行数据库的重建,从而恢复数据库。方法:使用“数据库另存为”命令5. 生成ACCDE文件将数据库生成为ACCDE文件是保护数据库的一种方法。ACCDE文件能防止他人进行以下操作:(1)在设计视图中查看、修改或创建窗体、报表和模块。(2)添加、删除或更改对对象或数据库的引用。(3)更改程序代码。(
34、4)导入或导出窗体、报表或模块。第3章 表目 录3.1 表结构的设计3.2 创建表3.3 表数据的录入3.4 建立表之间的关联关系3.5 表的导入、导出和链接3.6 表的基本操作3.1 表结构的设计要创建表,首先必须确定表的结构,即确定表中各字段的字段名称、数据类型和字段大小等。3.1.1 字段名称的命名规定(1)字段名称最长64个字符。(2)字段名称中不允许使用的字符有: 叹号! 句点 . 方括号 单引号(3)字段名称不能以空格开头。3.1.2 字段的数据类型1短文本2长文本3数字4日期/时间5货币6自动编号7是/否8OLE对象9超链接10附件11计算12查阅向导共12种1. 短文本用于保存
35、字符数据。一些只作为字符用途的数字数据也可以使用短文本类型,最大为255个字符,采用可变长度进行存储。例如,如果字段大小设置为20个字符,而每条记录实际仅仅输入了5 个字符,那么其在数据库中只会占用5 个字符的空间。【提示】在Access数据库中,一个英文字符或一个汉字都被认为是一个字符。2. 长文本一般用于保存较长(超过255个字符)的文本信息,最多可以保存1GB个字符。 例如,学生的奖惩情况、个人简历等。长文本型字段也是按照实际大小进行存储,不需要指定字段大小,Access 会自动为数据分配所需空间。3. 数字用于保存数值数据。有7种:(1)字节:1字节,0255之间的整数。(2)整型:2
36、字节,-3276832767之间的整数。(3)长整型:4字节,-21474836482147483647之间的整数。(4)单精度型:4字节,-3.410383.41038之间且最多具有7位有效数字的浮点数。(5)双精度型:8字节,-1.797103081.79710308之间且最多具有15位有效数字的浮点数。(6)同步复制ID:16字节,存储全局唯一标识。(7)小数:12字节,-9.99910279.9991027之间的数值。4. 日期/时间保存100 年1 月1 日至9999 年12 月31 日之间任意的日期和时间数据,字段大小固定为8字节。例如学生的出生日期。5. 货币主要保存货币值或数值
37、数据,字段大小固定为8字节,其精度为整数部分最多15位,小数部分不超过4位。一般情况下,在输入数据后系统会自动在前面加上货币符号,如“”。6. 自动编号默认字段大小为长整型,即4字节;用于“同步复制ID”时,字段大小为16字节。当向表中添加新记录时,自动编号类型会自动为每条记录存储一个唯一的编号(从1 开始每次递增1 或随机编号),因此可以将这种数据类型的字段设置为主键。自动编号类型的字段值不会自动调整,因此删除记录后自动编号类型的字段值有可能会变得不连续。7. 是/否是/否类型实际上就是布尔型,用于表示只可能取两个逻辑值中的一个。例如,是/否(Yes/No)、真/假(True/False)、
38、开/关(On/Off)等。是/否型字段内部存储的值为-1(是)或0(否),占用一个存储位。8. OLE对象用于存储其他应用程序所创建的文件(例如,Word文档、Excel电子表格、图片等),只能存储一个文件,最大1GB。9. 超链接用于存放链接到本地或网络上资源的地址,最多1GB个字符。超链接地址可以是URL(网页地址),也可以是UNC路径(局域网上的文件地址)。超链接地址包含显示文本、地址、子地址3个部分(也可以只有前两个部分),以“#”符号隔开,一般格式为: 显示文本#地址#子地址#10. 附件用于存储其他应用程序所创建的文件(例如,Word文档、Excel电子表格、图片等),可以在一条记
39、录的单个字段中同时存储多个文件。11. 计算用于存放根据同一表中的其他字段计算而来的结果值,计算不能引用其他表中的字段。计算字段存储的结果值的数据类型可以是短文本、数字、日期/时间、货币或是/否。12. 查阅向导查阅向导提供了一个建立字段内容的列表,允许用户从列表中选择该字段的值,从而提高输入数据的效率。例如,可以为学生表中的“政治面貌”字段建立“查阅向导”,定义“党员”“团员”和“群众”3个选项,输入学生的政治面貌时直接选择。查阅向导最终的数据类型取决于列表中的数据来源。3.1.3 “学生成绩管理”数据库各表结构设计1院系代码表院系代码表(院系代码,院系名称,院系网址)2学生表学生表(学号,
40、姓名,性别,出生日期,政治面貌,班级, 院系代码,入学总分,奖惩情况,照片)3课程表课程表(课程编号,课程名称,学时,学分,开课状态, 课程大纲)4选课成绩表选课成绩表(学号,课程编号,成绩,学年,学期)1. 院系代码表的结构根据院系代码表的实际情况可以确定它的表结构。其中主键是“院系代码”字段2. 学生表的结构根据学生表的实际情况可以确定它的表结构。其中主键是“学号”字段,外键是“院系代码”字段。3. 课程表的结构根据课程表的实际情况可以确定它的表结构。其中主键是“课程编号”字段。4. 选课成绩表的结构根据选课成绩表的实际情况可以确定它的表结构,其中主键是“学号+课程编号”字段,两个外键分别
41、是“学号”和“课程编号”字段。3.2 创建表使用数据表视图创建表使用设计视图创建表3.2.1 使用数据表视图创建表【例3-1】创建“院系代码表”单击“单击以添加”列标题,在下拉列表中选择数据类型,然后修改字段名称。3.2.1 使用数据表视图创建表【例3-1】创建“院系代码表”单击“单击以添加”列标题,在下拉列表中选择数据类型,然后修改字段名称。3.2.1 使用数据表视图创建表【例3-1】创建“院系代码表”单击“单击以添加”列标题,在下拉列表中选择数据类型,然后修改字段名称。【提示】使用数据表视图创建表后,会有一个ID字段,这是Access自带的,其默认数据类型为自动编号。3.2.2 使用设计视
42、图创建表【例3-2】创建“学生表”在表设计视图中直接输入“字段名称”和“数据类型”,并按要求设置字段大小。3.2.2 使用设计视图创建表【例3-2】创建“学生表”使用查阅向导实现“政治面貌” 字段。在“查阅向导”对话框中选择“自行键入所需的值”,然后输入查阅字段中要显示的值。3.2.2 使用设计视图创建表【例3-2】创建“学生表”设置学生表的主键。 选中“学号”字段,单击表格工具“设计”选项卡“工具”选项组中的“ 主键”按钮,“学号”字段的左边出现一个钥匙图形,表示已经将它设置为主键。【提示】要取消已经设置的主键,只需要按照设置主键的方法再操作一次即可。3.2.3 设置表的主键表的主键有3种:
43、1单字段主键 主键仅由一个字段组成。2多字段主键 主键由两个或两个以上的字段组成。3自动编号类型字段主键在使用数据表视图创建表时,系统会自动创建一个类型为自动编号的“ID”字段,并把它默认为新表的主键。在保存创建的新表时,如果之前没有设置主键,系统将会提示“是否创建主键?”,若选择“是”,则系统将自动创建一个类型为自动编号的“ID”字段,并把它设置为表的主键。3.2.4 修改表的结构对已经创建的表结构不满意,可以在表的设计视图中进行适当的修改。在对表结构进行修改时,应注意可能会导致数据丢失的两种情形:(1)缩小“字段大小”的值可能会导致该字段原有数据部分丢失;(2)改变数据类型可能会造成该字段
44、原有数据全部丢失。3.2.5 设置字段的属性1字段大小2格式3小数位数4输入掩码5标题6默认值7验证规则和验证文本8必需9索引1. 字段大小短文本型字段的长度: 1255数字型字段的种类:字节、整型、长整型、单精度型、双精度型、同步复制ID、小数2. 格式指定字段的显示和打印效果。数字型字段的格式日期/时间型字段的格式是/否型字段的格式3. 小数位数用于指定数字型或货币型数据的小数位数。字节、整型、长整型:小数位数为0单精度型:小数位数可以是07位双精度型:小数位数可以是015位在Access数据库中,小数位数默认是“自动”,即小数位数由字段的格式决定。4. 输入掩码用于定义数据的输入格式。学
45、生表的“学号”字段要求是10位的数字字符,输入掩码应设置为:0000000000,以确保必须输入10位数字字符5. 标题用于在数据表视图、窗体和报表中取代字段的显示名称,但不改变表结构中的字段名称。6. 默认值 默认值是指添加新记录时,自动加入到字段中的值。例如,可以将学生表中“性别”字段的默认值设置为“男”。当用户添加新学生记录时,该字段的值会自动设置为“男” 。7.验证规则和验证文本字段的验证规则用来检查字段中的输入值是否符合要求。设置了验证规则后,当用户输入的数据违反了有效性规则就会弹出验证文本中设置的提示信息。针对“性别”字段验证规则:“男” or “女”验证文本:性别只能是“男”或“
46、女”8. 必需必需属性可以确定字段中是否必须有值。如果该属性设置为“是”,则在添加新记录时必须在该字段中输入数据,而且不能为空值。9. 索引用来确定某字段是否作为索引。索引是将表中的记录按索引字段值排序的技术,但不改变表中数据的物理顺序。一张表可以建立多个索引,每一个索引确定表中记录的一种逻辑顺序。【提示】索引将加快在字段中搜索及排序的速度,但可能会使更新变慢。在Access2016中,不能对“附件”和“OLE对象”类型的字段使用索引。3.3 表数据的录入1不同数据类型对输入数据的要求(1)短文本:可以接受任意的文本或数字字符,但如果设置了输入掩码,则必须按照输入掩码规定的格式输入数据,输入字
47、符的个数受字段大小限制。(2)长文本:可以接受任意的文本字符,最多1GB个字符。(3)数字:只能输入合法的数值数据。(4)日期/时间:只能输入1009999年份之间任意的日期和时间。如果未设置输入掩码,无论采用哪一种格式输入,Access都将按照统一的格式显示。输入:11 Mar.2020 2020/3/11 2020-3-11 March 11,2020默认都显示为:2020/3/113.3 表数据的录入1不同数据类型对输入数据的要求(5)货币:只能输入合法的货币值。(6)自动编号:不能输入或更改数据。(7)是/否:默认情况下是通过一个复选框来输入,勾选(打“”表示“是”,未选中(空白)表示
48、“否”。(8)OLE对象:可以链接或嵌入一个其他应用程序所创建的文件,在该字段单元格位置右击鼠标后选择快捷菜单中的“插入对象”命令来输入。3.3 表数据的录入1不同数据类型对输入数据的要求(9)超链接:可以输入任何文本数据,Access会自动向文本中添加http:/。(10)附件:可以将多个其他应用程序所创建的文件附加到该类型字段中,在该字段单元格位置双击鼠标,然后在对话框中添加附件。(11)计算:不能输入或更改数据。(12)查阅向导:从下拉列表中选择字段的值。3.3 表数据的录入2学生表数据的录入(1)* 行表示可以在该行输入新的记录。(2)“学号”输入掩码为“0000000000”,只允许
49、输入10位数字。(3)“政治面貌”是查阅向导,点击单元格右端的下拉按钮选择值。(4)“出生日期”输入掩码为“0000/99/99”,所以年份必须输入4位数字,月和日可以只输入1位或2位数字。(5)“照片”附件,在对应单元格位置双击后,在“附件”对话框中添加照片文件。(6)“奖惩情况”,如果该记录这个字段的数据不存在,则使用空值。 Null 值或零长度字符串()。3.3 表数据的录入3院系代码表数据的录入“院系网址”(超链接类型)的录入(1)可以在对应数据项位置直接输入地址。超链接地址由显示文本和地址组成,用“#”符号隔开。(2)右击后选择快捷菜单中的“超链接|编辑超链接”命令。3.3 表数据的
50、录入4课程表数据的录入“开课状态”(是/否型)在复选框上打表示True,空白表示False。“课程大纲”(OLE 对象型)在对应单元格位置单击鼠标右键并在弹出的快捷菜单中选择“插入对象”命令,按提示找到相应的Word文件插入。3.3 表数据的录入5选课成绩表数据的录入【例3-4】添加计算字段来获得成绩评定。 完成计算的表达式: IIf(成绩=60,通过, 未通过)3.4 建立表之间的关联关系通过一张表的主键和另一张表的外键来创建两张表之间的联系。1对主键和外键的要求(1)字段名称可以不同,但是必须有相同的数据类型(除非主键是“自动编号”类型)。(2)“自动编号”类型可以与“数字”类型并且字段大
51、小为“长整型”的字段关联。(3)如果相关联的两个字段都是“数字”类型,那么这两个字段的字段大小必须相同。3.4 建立表之间的关联关系2建立表之间的关联关系在关系窗口中,将一张表中的主键拖曳到另一张表中相应的外键字段上,然后在“编辑关系”对话框单击“创建”按钮,完成关系的创建。3.4 建立表之间的关联关系3实施参照完整性参照完整性则是对相关联的两张表之间的约束,要求子表中每条记录的外键值必须是父表中存在的主键值。参照完整性作用:(1)不能在子表的外键字段中输入父表的主键中不存在的值。(2)如果子表中存在匹配的记录,则不能从父表中删除该记录。(3)如果子表中存在匹配的记录,则不能在父表中更改该主键
52、值。3.4 建立表之间的关联关系参照完整性的两个选项(1)级联更新相关字段 勾选“级联更新相关字段”后,当修改父表中记录的主键值时,将自动更新子表中相关记录的外键值,使它们保持一致。(2)级联删除相关记录 勾选“级联删除相关记录”后,当删除父表中某条记录时,将自动删除子表中的相关记录。3.4 建立表之间的关联关系4删除关联关系 关系窗口中显示的是各表之间关系的图示。如果只是在该窗口中选中某个表,然后按Delete 键,则仅仅会删除该表的图示,不会删除该表相关的关联关系本身。要想删除关联关系,必须选中关联关系连线后再按Delete 键。3.4 建立表之间的关联关系5父表和子表两张表之间创建了一对
53、多关系后,“一”端的表称为父表,“多”端的表称为子表。在父表的数据表视图中,通过单击记录左侧的折叠按钮(+或-)可以展开或关闭子表。3.5 表的导入、导出和链接目的是实现不同系统之间的数据资源共享。可以将Excel电子表格、文本文件或XML文件中的数据导入到Access 2016数据库中;或者将Access 2016数据表链接到其他文件(如Excel电子表格)中的数据,但不将数据导入表中。同样,也可以将Access 2016数据表中的记录导出,以Excel电子表格、文本文件或Word文件格式存储在磁盘上。3.5.1 表的导入 导入功能可以将外部数据源中的数据导入到本数据库已有的表中,也可以直接
54、创建一个新表。3.5.2 表的导出 导出功能是将Access数据库表中的数据,导出到其他Access数据库、Excel电子表格、文本文件、Word文件或XML文件等。3.5.3 表的链接链接功能也是创建表的方法之一,能够将Access数据表链接到其他文件(如Excel电子表格)中的数据,但不将数据导入表中。3.6 表的基本操作3.6.1 打开和关闭表3.6.2 记录的定位3.6.3 记录的操作3.6.4 记录的排序3.6.5 记录的筛选3.6.6 表的外观设置3.6.7 表的复制、删除和重命名3.6.1 打开和关闭表1打开表:指打开表的“数据表视图”方法1:双击表名称。方法2:在表名称处单击鼠
55、标右键,在快捷菜单中选择“打开”命令。2关闭表方法1:单击表窗口右上角的“关闭”按钮。方法2:在表窗口的标题栏单击鼠标右键,在快捷菜单中选择“关闭”命令。3.6.2 记录的定位1记录导航按钮2“转至”按钮3“查找”按钮3.6.3 记录的操作1添加记录:在数据表视图中直接添加 2编辑记录:在数据表视图中直接修改 如果实施参照完整性时选中了“级联更新相关字段”,则修改父表主键值时将自动更新子表中相关记录的外键值。如果仅实施了参照完整性但未并选中该选项,而且子表中存在匹配的记录,则不能在父表中修改该主键值。3删除记录:在数据表视图选定要删除的记录后直接删除 如果实施参照完整性时选中了“级联删除相关记
56、录”,则删除父表记录时将自动删除子表中的相关记录。如果仅实施了参照完整性但未并选中该选项,而且子表中存在匹配的记录,则不能删除父表中该记录。4. 保存记录:在Access中,当移动到其他记录时,系统会自动保存正在编辑的记录。3.6.4 记录的排序1. 排序规则:(1)英文按字母顺序排序,不区分大小写,升序按AZ 排序,降序按ZA排序。(2)汉字按拼音字母的顺序排序,升序按AZ 排序,降序按ZA 排序。(3)数字按数值的大小排序,升序按从小到大排序,降序按从大到小排序。(4)日期和时间按日期的先后顺序排序,升序按从前到后的顺序排序,降序按从后向前的顺序排序。3.6.4 记录的排序2. 单个字段排
57、序在数据表视图中选定要排序的字段,单击“开始”选项卡“排序和筛选”选项组中的“ 升序”或“ 降序”按钮。学生表按照出生日期升序进行排序后:3.6.4 记录的排序3. 多个字段排序需要使用“高级筛选/排序”命令。学生表按照班级升序和入学总分的降序排序:3.6.5 记录的筛选 记录的筛选是将符合筛选条件的记录显示出来,而其他记录被暂时隐藏起来,方便用户查看。筛选方法:1按选定内容筛选2使用筛选器筛选3按窗体筛选4高级筛选1. 按选定内容筛选按选定内容筛选就是用表中某个字段的值作为筛选条件来快速筛选记录。在学生表中快速筛选出所有男生。2. 使用筛选器筛选在数据表视图中,选定要筛选的字段,然后单击“开
58、始”选项卡“排序和筛选”选项组中的“ 筛选器”按钮。学生表中“性别”字段筛选器:只选中了“男”,即只显示所有男生的记录,其他记录将被隐藏起来。3. 按窗体筛选默认有两张选项卡:“查找”和“或”,“或”选项卡可以插入多张。同一张选项卡上的筛选条件之间是“与关系,不同选项卡之间是“或关系。按窗体筛选出男生党员和入学总分在630以上(含630)的女生记录。4. 高级筛选如果对筛选的结果有排序要求,则只能通过高级筛选功能来实现。在学生表中,使用高级筛选功能筛选出男生党员和入学成绩在630分以上(含630分)的女生记录,并按入学总分的降序排序。同一“条件”行中各个条件之间是“与”关系,不同条件行之间是“
59、或”关系。3.6.6 表的外观设置 表的外观设置实际上是指设置“数据表视图”中显示的二维表格的外观。1调整字段的显示次序2设置数据表格式3隐藏或显示数据表中的列4冻结数据表中的列5调整数据表的行高和列宽3.6.7 表的复制、删除和重命名1复制表: 通过“复制”和“粘贴”按钮来完成。 3种粘贴表方式:仅结构。复制后的新表只有表结构,没有数据。当新表的结构与原表结构相似时使用这个选项,可以减少创建新表的工作量。结构和数据。复制后的新表与原表完全相同(除表名称外)。当需要备份表时可以使用这个选项。将数据追加到已有的表。复制后不产生新表,在“表名称”文本框中只能输入已经存在的表名称,而且要求两张表的结
60、构完全相同。当需要将一张表的数据全部追加到另一张表中时使用这个选项。3.5.7 表的复制、删除和重命名2删除表方法1:在导航窗格中用鼠标右键单击要删除的表名称,在快捷菜单中选择“删除”命令。方法2:在导航窗格中选中要删除的表,再按“Delete”键。提示: 如果要删除的表与其他表之间创建了关系,则暂时不能删除,只有删除表间关系后才能删除表。3.5.7 表的复制、删除和重命名3重命名表(1)在导航窗格中用鼠标右键单击要重命名的表名称,在快捷菜单中选择“重命名”命令。(2) 在表名称编辑框中输入新表名,然后按回车键。第4章 查询本章主要内容查询概述1选择查询2交叉表查询3参数查询4操作查询54.1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年外卖订餐服务标准化协议版B版
- 2024年定制安防监控系统施工项目协议协议版B版
- 2024厂房拆除合同范本
- 2024专升本教育领域招标策略及协议风险防控版B版
- 2024年度劳动合同及工资支付借条2篇
- 2024年企业云计算服务协议
- 2024年定制化营销活动合同版B版
- 2024年北京地区汽车租赁协议标准格式样本版
- 2024双方协议离婚财产分割
- 2024年专业三方担保机构借款服务协议模板
- 国家开放大学《Web开发基础》形考任务实验1-5参考答案
- 24春国家开放大学《建筑力学#》形考任务1-4参考答案
- 水利安全生产风险防控“六项机制”右江模式经验分享
- 五育并举-同心筑梦家长会课件
- 2023-2024学年教科版三年级上学期科学期中检测试卷(含答案)
- 《小英雄雨来》读书分享会
- 作业设计《质量守恒定律》
- 钻井作业指导书
- 供应链管理:高成本、高库存、重资产的解决方案 第2版
- 产时子痫应急演练文档
- CRPS电源设计向导 CRPS Design Guide r-2017
评论
0/150
提交评论