1、2022/7/251Access 数据库程序设计北华大学北华大学信息技术与传媒学院信息技术与传媒学院2信息技术与传媒学院信息技术与传媒学院2022/7/252掌握数据库最常用的术语和基本概念掌握数据库最常用的术语和基本概念;明确常用数据模型组成要素,最常用的数据明确常用数据模型组成要素,最常用的数据模型的区别及优缺点模型的区别及优缺点;了解关系模型的组成及基本的关系运算了解关系模型的组成及基本的关系运算;了解关系数据库的完整性设计和规范化设计。了解关系数据库的完整性设计和规范化设计。本单元教学目的和要求3信息技术与传媒学院信息技术与传媒学院2022/7/253第一章第一章 数据库基础理论数据库
2、基础理论1.1 1.1 数据库系统概述数据库系统概述1.2 1.2 数据模型数据模型1.3 1.3 关系数据库概述关系数据库概述1.4 1.4 数据库系统开发方法与步骤数据库系统开发方法与步骤4信息技术与传媒学院信息技术与传媒学院2022/7/2541.1.1 1.1.1 数据库系统的构成数据库系统的构成 数据库系统(数据库系统(Database SystemDatabase System,简称,简称DBSDBS)是采用数据库技术的计算机系统,主要由数据库、是采用数据库技术的计算机系统,主要由数据库、数据库管理系统和数据库应用系统三部分构成的运数据库管理系统和数据库应用系统三部分构成的运行实体
3、。行实体。1.1 1.1 数据库系统概述数据库系统概述5信息技术与传媒学院信息技术与传媒学院1.1 1.1 数据库系统概述数据库系统概述2022/7/2551.1.数据库数据库(DataBase(DataBase,简称,简称DB)DB)所谓数据库,是以一定的组织方式将相关的数据所谓数据库,是以一定的组织方式将相关的数据组织在一起,长期存放在计算机内,可为多个用组织在一起,长期存放在计算机内,可为多个用户共享,与应用程序彼此独立,统一管理的数据户共享,与应用程序彼此独立,统一管理的数据集合。集合。数据库是数据库系统的核心部分,是数据库系统数据库是数据库系统的核心部分,是数据库系统的管理对象。的管
4、理对象。6信息技术与传媒学院信息技术与传媒学院61.1 1.1 数据库系统概述数据库系统概述2.2.数据库管理系统数据库管理系统 数据库管理系统(数据库管理系统(Database Management SystemDatabase Management System,简称简称DBMSDBMS)是提供建立、管理、维护和控制数)是提供建立、管理、维护和控制数据库功能的一组计算机软件。据库功能的一组计算机软件。数据库管理系统的目标是使用户能够科学地组数据库管理系统的目标是使用户能够科学地组织和存储数据,能够从数据库中高效地获得需要织和存储数据,能够从数据库中高效地获得需要的数据,方便地处理数据。的数
5、据,方便地处理数据。7信息技术与传媒学院信息技术与传媒学院2022/7/2573.3.数据库应用系统数据库应用系统数据库应用系统是指在数据库管理系统的基础上由数据库应用系统是指在数据库管理系统的基础上由用户根据自己的实际需要自行开发的应用程序。用户根据自己的实际需要自行开发的应用程序。不同的人员涉及不同的数据抽象级别。不同的人员涉及不同的数据抽象级别。数据管理员负责管理和控制数据库系统;数据管理员负责管理和控制数据库系统;应用程序开发人员负责设计应用系统的程序模块、应用程序开发人员负责设计应用系统的程序模块、编写应用程序;编写应用程序;最终用户通过应用系统提供的用户界面使用数据库。最终用户通过
6、应用系统提供的用户界面使用数据库。1.1 1.1 数据库系统概述数据库系统概述8信息技术与传媒学院信息技术与传媒学院2022/7/2581.1 1.1 数据库系统概述数据库系统概述 数据库、数据库管理系统、数据库系统三个概数据库、数据库管理系统、数据库系统三个概念的区别念的区别数据库强调的是数据数据库强调的是数据数据库管理系统是管理数据库的工具软件数据库管理系统是管理数据库的工具软件数据库系统强调的则是一个整体系统数据库系统强调的则是一个整体系统9信息技术与传媒学院信息技术与传媒学院2022/7/2591.1 1.1 数据库系统概述数据库系统概述1.1.2 1.1.2 数据库管理系统功能数据库
7、管理系统功能 数据定义 数据操作 数据库的运行管理 数据组织、存储与管理 数据库的保护 数据库的维护 通信10信息技术与传媒学院信息技术与传媒学院2022/7/25101.2 1.2 数据模型1.2.1 1.2.1 数据模型的概念数据模型的概念数据(数据(DataData)存储在某一种媒体上能够被识别的物理符号。包括数字、文存储在某一种媒体上能够被识别的物理符号。包括数字、文字、字母和其他字符,以及图形、图像、动画、声音等。字、字母和其他字符,以及图形、图像、动画、声音等。模型模型(Model)Model)是现实世界的抽象。是现实世界的抽象。数据模型数据模型(Data ModelData Mo
8、del)是数据特征的抽象,是数据库管理的教学形式框)是数据特征的抽象,是数据库管理的教学形式框架。数据库系统中用以提供信息表示和操作手段的形式构架。架。数据库系统中用以提供信息表示和操作手段的形式构架。数据模型包括数据模型包括数据库数据的结构部分、数据库数据的操作部分和数据库数据库数据的结构部分、数据库数据的操作部分和数据库数据的约束条件。数据的约束条件。数据模型按不同的应用层次分成三种类型数据模型按不同的应用层次分成三种类型:概念数据模型、逻辑数据模:概念数据模型、逻辑数据模型、物理数据模型。型、物理数据模型。11信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型1.2.2 1.2
9、.2 概念数据模型概念数据模型 概念数据模型是面向数据库用户的实现世界的模概念数据模型是面向数据库用户的实现世界的模型,主要用来描述世界的概念化结构,它使数据库型,主要用来描述世界的概念化结构,它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及的设计人员在设计的初始阶段,摆脱计算机系统及DBMSDBMS的具体技术问题,集中精力分析数据以及数的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的数据管理系统(据之间的联系等,与具体的数据管理系统(Database Management SystemDatabase Management System,简称,简称DBMSDBMS)无关。
10、)无关。概念数据模型必须换成逻辑数据模型,才能在概念数据模型必须换成逻辑数据模型,才能在DBMSDBMS中实现。中实现。2022/7/251112信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型2022/7/251213信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型实体间的对应关系。2022/7/251314信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型 对于 一个实体集A(表)中的每一个实体,另一个实体集B(表)至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。例如,学生表和学生家庭表之间是一对一的联系。例如,学生表和学生家庭表之
11、间是一对一的联系。一个实体集A(表)的每一条记录与另一个实体集B(表)中的多条记录相关联。例如,学生表和成绩表之间是一对多的联系。例如,学生表和成绩表之间是一对多的联系。多对多联系表示一个实体集A(表)的多条记录与另一个实体集B(表)中的多条记录相关联。例如,学生成绩表和课程表之间是多对多的联系。例如,学生成绩表和课程表之间是多对多的联系。2022/7/251415信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型2022/7/2515实体型用矩形表示,属性用椭圆形表示,联系实体型用矩形表示,属性用椭圆形表示,联系用菱形表示。用菱形表示。教师讲课教师讲课ERER图图16信息技术与传媒
12、学院信息技术与传媒学院1.2 1.2 数据模型2022/7/25161.2.3 1.2.3 逻辑数据模型逻辑数据模型常用的有层次模型、网状模型、关系模型和面向对象模型。学校生物学院管理学院信息学院建筑学院计算机系信息科学系17信息技术与传媒学院信息技术与传媒学院2022/7/251.2 1.2 数据模型系教研室学生教师宿舍学校课程教材教师学生教室18信息技术与传媒学院信息技术与传媒学院2022/7/25181.2 1.2 数据模型 关系模型是建立在关系代数基础上的,一个关系模型的逻辑结构是一个二维表,它由行和列组成。在关系模型中操作的对象和结果都是二维表,这种二维表就称为关系,用关系表示的数据
13、模型称为关系模型。读者编号读者编号姓名姓名性别性别出生日期出生日期办证日期办证日期VIP联系电话联系电话2007001王天依王天依女女1986-10-262007-9-3TRUE836685112007002裴志红裴志红女女1986-4-302007-9-3FALSE836685112007003赵乐赵乐男男1986-11-242007-9-3FALSE836685112007004杜超杜超男男1986-4-282007-9-3FALSE836686312007005张寅雪张寅雪女女1985-11-152007-9-3FALSE8366851119信息技术与传媒学院信息技术与传媒学院2022/
14、7/25191.2 1.2 数据模型关系模型的特点:关系模型的特点:关系中的每一分量不可再分,是最基本的数据单位;每一竖列的分量是同属性的,列数根据需要而设,且各列的顺序是任意的;每一横行由一个个体事物的多属性构成,且各行的顺序可以是任意的;一个关系是一张二维表,不允许有相同的属性名,也不允许有相同的元组。20信息技术与传媒学院信息技术与传媒学院2022/7/25201.2 1.2 数据模型 面向对象模型面向对象模型是近几年来发展起来的一种新兴的是近几年来发展起来的一种新兴的数据模型。一个面向对象模型是用面向对象观点来描数据模型。一个面向对象模型是用面向对象观点来描述现实世界实体述现实世界实体
15、(对象对象)的逻辑组织、对象间限制、联的逻辑组织、对象间限制、联系等的模型。系等的模型。21信息技术与传媒学院信息技术与传媒学院2022/7/25211.3 关系数据库概述关系数据库关系数据库 是若干个关系的集合。也可以说,是若干个关系的集合。也可以说,关系数据库是由若干张二维表组成的。关系数据库是由若干张二维表组成的。一个关系数据库由若干个数据表组成,一个关系数据库由若干个数据表组成,每个数据表又由若干条记录组成。每个数据表又由若干条记录组成。在关系数据库中,数据表为基本文件,在关系数据库中,数据表为基本文件,每个数据表之间具有独立性,而且若干个数据之每个数据表之间具有独立性,而且若干个数据
16、之间具有独立性,而且若干个数据表之间又具有相间具有独立性,而且若干个数据表之间又具有相关性,使得数据操作方式简单。关性,使得数据操作方式简单。22信息技术与传媒学院信息技术与传媒学院2022/7/25221.3 关系数据库概述1.3.1 1.3.1 关系术语关系术语 关系:关系:关系模型中一个关系就是一个二维表。元组:元组:表中的一行即为一个元组。属性:属性:表中的一列即为一个属性,给每个属性起一个名字即为属性名。商品号商品名称21000001电冰箱31000001洗衣机41000001空调记录(元组)记录(元组)字段(属性)字段(属性)23信息技术与传媒学院信息技术与传媒学院2022/7/2
17、5231.3 关系数据库概述码:码:唯一地标识一个元组的一个或若干个属性的集合。主码主码:当一个关系有多个码时,选定其中一个作为主键字。外码外码:若在诸属性中,某属性不是该关系的主码,却是另一个关系的主码,则称该属性为外部关键字。域域:属性的取值范围。分量分量:元组中的一个属性值。24信息技术与传媒学院信息技术与传媒学院2022/7/25241.3 关系数据库概述1.3.2 1.3.2 关系数据库的特点关系数据库的特点数据集中控制数据独立数据共享减少数据冗余数据结构化统一的数据保护功能25信息技术与传媒学院信息技术与传媒学院2022/7/25251.3 关系数据库概述1.3.3 1.3.3 关
18、系的完整性关系的完整性 关系的完整性关系的完整性,即关系中的数据及具有关联的数据间必即关系中的数据及具有关联的数据间必须遵循的制约和依存关系。关系的完整性用于保证数据的正须遵循的制约和依存关系。关系的完整性用于保证数据的正确性、有效性和相容性。关系的完整性包括:确性、有效性和相容性。关系的完整性包括:p域完整性域完整性p实体完整性实体完整性p参照完整性参照完整性 其中实体完整性和参照完整性是关系模型必须满足的完其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为是关系的两个不变性,应该由关系系整性约束条件,被称为是关系的两个不变性,应该由关系系统自动支持。统自动支持。26信息技
19、术与传媒学院信息技术与传媒学院2022/7/25261.3 关系数据库概述1.1.域完整性域完整性 域完整性是针对某一具体字段的数据设置的域完整性是针对某一具体字段的数据设置的约束条件。约束条件。AccessAccess中中提供定义和检验域完整性的方法提供定义和检验域完整性的方法。例如,可以将例如,可以将“性别性别”字段定义为分别取两字段定义为分别取两个值个值“男男”或或“女女”,将,将“成绩成绩”字段值定义为字段值定义为O O100100之间。之间。(字段)(字段)27信息技术与传媒学院信息技术与传媒学院2022/7/25271.3 关系数据库概述2.2.实体完整性实体完整性 保证表中记录的
20、唯一性,即在表中不允许出保证表中记录的唯一性,即在表中不允许出现重复记录。现重复记录。在在AccessAccess中利用主键或候选键来保证记录的中利用主键或候选键来保证记录的唯一性。唯一性。主键既不能取空值主键既不能取空值NullNull,也不能有重复,也不能有重复值。值。例如,在学生表中字段例如,在学生表中字段“学号学号”作为主键,作为主键,其值不能为空值其值不能为空值NullNull,也不能有两条记录的学号,也不能有两条记录的学号相同。相同。(记录)(记录)28信息技术与传媒学院信息技术与传媒学院2022/7/25281.3 关系数据库概述3.3.参照完整性参照完整性 参照完整性是相关联的
21、两个表之间的约束参照完整性是相关联的两个表之间的约束,当输入、删除或更新表中记录时,保证各相关表之当输入、删除或更新表中记录时,保证各相关表之间数据的完整性。间数据的完整性。例如,如果在学生表和成绩表之间用学号建例如,如果在学生表和成绩表之间用学号建立关联,学生表是主表,成绩表是从表,那么,在立关联,学生表是主表,成绩表是从表,那么,在向成绩表中输入一条新记录时,系统要检查新记录向成绩表中输入一条新记录时,系统要检查新记录的学号是否在学生表中已存在。如果存在,则允许的学号是否在学生表中已存在。如果存在,则允许执行输入操作;否则拒绝输入,以保证输入记录的执行输入操作;否则拒绝输入,以保证输入记录
22、的合法性。合法性。(多表关联)(多表关联)1.3.4 1.3.4 关系运算关系运算关系的基本运算有两种:关系的基本运算有两种:传统的集合运算:传统的集合运算:并、差、交等并、差、交等专门的关系运算:专门的关系运算:选择、投影、连接、除法等选择、投影、连接、除法等1.3 关系数据库概述传统的集合运算传统的集合运算传统的集合运算包含并、差、交等。两个关系必须具有相同的关系传统的集合运算包含并、差、交等。两个关系必须具有相同的关系模式,即元组(记录)有相同的结构。模式,即元组(记录)有相同的结构。1.3 关系数据库概述关系关系R教师编号教师编号姓名性别所属学院学历职称js000117js000117
23、高明武TRUE计算机学院本科副教授js000124js000124许春兰FALSE技术学院本科讲师js000208js000208张思德TRUE机械学院硕士教授js000213js000213李鹏TRUE美术学院本科副教授js000218js000218孙大可TRUE护理学院硕士讲师关系关系S教师编号教师编号姓名性别所属学院学历职称js000225js000225吕丽FALSE理学院硕士助教js000226js000226田立君FALSE文学院本科讲师js000228js000228李鸣锋TRUE电气学院硕士助教js000314js000314张进博TRUE政法学院博士教授js000316js
24、000316王英FALSE机械学院本科教授1.并(UNION)设有两个关系R和S,它们具有相同的结构。R和S的并是由属于R或属于S的元组组成的集合,运算符为。记为T=RS。1.3 关系数据库概述RSRS教师编号教师编号姓名性别所属学院学历职称js000117js000117高明武TRUE计算机学院本科副教授js000124js000124许春兰FALSE技术学院本科讲师js000208js000208张思德TRUE机械学院硕士教授js000213js000213李鹏TRUE美术学院本科副教授js000218js000218孙大可TRUE护理学院硕士讲师js000225js000225吕丽FAL
25、SE理学院硕士助教js000226js000226田立君FALSE文学院本科讲师js000228js000228李鸣锋TRUE电气学院硕士助教js000314js000314张进博TRUE政法学院博士教授js000316js000316王英FALSE机械学院本科教授2.差(DIFFERENCE)R和S的差是由属于R但不属于S的元组组成的集合,运算符为。记为T=RS。1.3 关系数据库概述关系关系R教师编号教师编号姓名性别所属学院学历职称js000117js000117高明武TRUE计算机学院本科副教授js000124js000124许春兰FALSE技术学院本科讲师js000208js00020
26、8张思德TRUE机械学院硕士教授js000213js000213李鹏TRUE美术学院本科副教授js000218js000218孙大可TRUE护理学院硕士讲师关系关系S教师编号教师编号姓名性别所属学院学历职称js000117js000117高明武TRUE计算机学院本科副教授js000124js000124许春兰FALSE技术学院本科讲师js000208js000208张思德TRUE机械学院硕士教授js000314js000314张进博TRUE政法学院博士教授js000316js000316王英FALSE机械学院本科教授R RS S教师编号教师编号姓名性别所属学院学历职称js000213js000
27、213李鹏TRUE美术学院本科副教授js000218js000218孙大可TRUE护理学院硕士讲师3.交(INTERSECTION)R和S的交是由既属于R又属于S的元组组成的集合,运算符为。记为T=RS。1.3 关系数据库概述关系关系R教师编号教师编号姓名性别学历职称js000117js000117高明武TRUE本科副教授js000124js000124许春兰FALSE本科讲师js000208js000208张思德TRUE硕士教授js000213js000213李鹏TRUE本科副教授js000218js000218孙大可TRUE硕士讲师关系关系S教师编号教师编号姓名性别学历职称js000117
28、js000117高明武TRUE本科副教授js000124js000124许春兰FALSE本科讲师js000228js000228李鸣锋TRUE硕士助教js000314js000314张进博TRUE博士教授js000316js000316王英FALSE本科教授RSRS教师编号教师编号姓名性别学历职称js000213js000213李鹏TRUE本科副教授js000218js000218孙大可TRUE硕士讲师专门的关系运算专门的关系运算1.选择运算选择运算从关系中找出满足给定条件的那些元组称为选择。其中的条件是以逻辑表从关系中找出满足给定条件的那些元组称为选择。其中的条件是以逻辑表达式给出的,值为真
29、的元组将被选取。这种运算是从水平方向抽取元组。达式给出的,值为真的元组将被选取。这种运算是从水平方向抽取元组。1.3 关系数据库概述教师基本情况表教师基本情况表教师编号教师编号姓名性别学历职称js000117js000117高明武TRUE本科副教授js000124js000124许春兰FALSE本科讲师js000208js000208张思德TRUE硕士教授js000213js000213李鹏TRUE本科副教授js000218js000218孙大可TRUE硕士讲师如:如:WHERE(教师基本情况表教师基本情况表.职称职称)=教授教授)教师编号教师编号姓名姓名性别性别学历学历职称职称js00020
30、8js000208张思德TRUE硕士教授2.投影运算投影运算从关系模式中挑选若干属性组成新的关系称为投影。这是从列的角度进行从关系模式中挑选若干属性组成新的关系称为投影。这是从列的角度进行的运算,相当于对关系进行垂直分解。的运算,相当于对关系进行垂直分解。1.3 关系数据库概述教师基本情况表教师基本情况表教师编号教师编号姓名性别学历职称js000117js000117高明武TRUE本科副教授js000124js000124许春兰FALSE本科讲师js000208js000208张思德TRUE硕士教授js000213js000213李鹏TRUE本科副教授js000218js000218孙大可TR
31、UE硕士讲师如:如:SELECT 教师基本情况表教师基本情况表.教师编号教师编号,教师基本情况表教师基本情况表.姓名姓名教师编号教师编号姓名姓名js000117js000117高明武js000124js000124许春兰js000208js000208张思德js000213js000213李鹏js000218js000218孙大可 笛卡尔积运算笛卡尔积运算设:关系设:关系R为为n列(列(n个属性),个属性),k1行(行(k1个元组)个元组)关系关系S为为m列(列(m个属性),个属性),k2行(行(k2个元组)个元组)则关系则关系R R和和S S的笛卡尔积,是的笛卡尔积,是R R中每个元组与中每
32、个元组与S S中中每个元组连接组成的新关系。记作:每个元组连接组成的新关系。记作:R R S S。注意:注意:新关系的属性个数等于新关系的属性个数等于n+m,元组个数等于,元组个数等于k1*k2。1.3 关系数据库概述1.3 关系数据库概述3.连接运算连接运算连接是根据给定的条件,从两个已知关系连接是根据给定的条件,从两个已知关系R和和S的笛卡尔积中,选取满的笛卡尔积中,选取满足连接条件(属性之间)的若干元组组成新的关系。足连接条件(属性之间)的若干元组组成新的关系。记作:记作:R_F S 其中其中F是选择条件。是选择条件。条件连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组。条件连接
33、:从两个关系的笛卡尔积中选取属性间满足一定条件的元组。相等连接:从关系相等连接:从关系R与与S的笛卡尔积中选取满足等值条件的元组。的笛卡尔积中选取满足等值条件的元组。自然连接:也是等值连接,从两个关系的笛卡尔积中,选取公共属性满自然连接:也是等值连接,从两个关系的笛卡尔积中,选取公共属性满足等值条件的元组,但新关系不包含重复的属性。存在关系足等值条件的元组,但新关系不包含重复的属性。存在关系R和关系和关系S,它们具有相同的属性(属性组)它们具有相同的属性(属性组)A,根据属性,根据属性A对对R和和S进行等值连接,进行等值连接,并在连接结果中去掉重复列。记为并在连接结果中去掉重复列。记为T=R
34、S1.3 关系数据库概述1.3 关系数据库概述2022/7/25信息与传媒学院信息与传媒学院39关系关系R R教师编号教师编号教师姓名课程名称js000117js000117高明武大学英语js000208js000208张思德大学计算机基础js000213js000213李鹏高级语言程序设计关系关系S S学生编号学生编号学生姓名课程名称201501110101201501110101孙立强大学英语201506620102201506620102李明翰大学英语201501110202201501110202张茹新大学计算机基础201505510102201505510102何康勇高级语言程序设计
35、R R S S教师编号教师编号教师姓名课程名称学生编号学生姓名js000117js000117高明武大学英语201501110101孙立强js000117js000117高明武大学英语201506620102李明翰js000208js000208张思德大学计算机基础201501110202张茹新js000213js000213李鹏高级语言程序设计201505510102何康勇4.除法运算除法运算在关系代数中,除法运算可理解为笛卡尔积的逆运算。在关系代数中,除法运算可理解为笛卡尔积的逆运算。设被除关系设被除关系R为为m元关系,除关系元关系,除关系S为为n元关系,那么它们的商为元关系,那么它们的商
36、为m-n元关系,记为元关系,记为RS。商的构成原则是:将被除关系。商的构成原则是:将被除关系R中的中的m-n列,按其列,按其值分成若干组,检查每一组的值分成若干组,检查每一组的n列值的集合是否包含除关系列值的集合是否包含除关系S,若包含则,若包含则取取m-n列的值作为商的一个元组,否则不取。列的值作为商的一个元组,否则不取。设有关系设有关系R(X,Y)和和S(Y),其中,其中X,Y可以是单个属性或属性集,可以是单个属性或属性集,RS的结果组成的新关系为的结果组成的新关系为T。RS运算规则:如果在运算规则:如果在(R)中能找到某一行)中能找到某一行u,使得这一行和,使得这一行和S的笛卡尔积含在的
37、笛卡尔积含在R中,则中,则T中有中有u。1.3 关系数据库概述1.3 关系数据库概述2022/7/25信息与传媒学院信息与传媒学院41R RA ABCa a1 1b1c2a a2 2b3c7a a3 3b4c6a a1 1b2c3a a4 4b6c6a a2 2b2c3a a1 1b2c1S SB BCb b1 1c2b b2 2c1b b2 2c3R RS SA Aa a1 15.外连接运算外连接运算是在连接条件的某一边添加一个符号是在连接条件的某一边添加一个符号“*”,其连接结果是为符号所,其连接结果是为符号所在边添加一个全部由在边添加一个全部由“空值空值”组成的行。组成的行。1.3 关系
38、数据库概述R RA ABCa a1 1b15a a1 1b26a a2 2b38a a2 2b412S SB BEb b1 13b b2 27b b3 310b b3 32b b5 52u外连接外连接如果把舍弃的元组保存在结果关系中,而在其他属性上填空值如果把舍弃的元组保存在结果关系中,而在其他属性上填空值(Null),这种连接就叫做外连接(这种连接就叫做外连接(OUTER JOIN)。)。R和和S作自然连接:把满足作自然连接:把满足R.B=S.B条件的元组保留在新关系中条件的元组保留在新关系中;把不满把不满足足R.B=S.B条件的元组也保留在新关系中,相应的值填空。条件的元组也保留在新关系中
39、,相应的值填空。1.3 关系数据库概述关系关系R R和关系和关系S S的外连接的外连接A ABCEa a1 1b153a a1 1b267a a2 2b3810a a2 2b382a a2 2b412nullnullnullb5null2u左外连接左外连接如果只把左边关系如果只把左边关系R中要舍弃的元组保留就叫做左外连接中要舍弃的元组保留就叫做左外连接(LEFT OUTER JOIN或或LEFT JOIN)R和和S作自然连接:把满足作自然连接:把满足R.B=S.B条件的元组保留在新关系中;把条件的元组保留在新关系中;把R关关系中不满足系中不满足R.B=S.B条件的元组也保留在新关系中,相应的值
40、填空。条件的元组也保留在新关系中,相应的值填空。1.3 关系数据库概述关系关系R R和关系和关系S S的左外连接的左外连接A ABCEa a1 1b153a a1 1b267a a2 2b3810a a2 2b382a a2 2b412nullu右外连接右外连接如果只把右边关系如果只把右边关系S中要舍弃的元组保留就叫做右外连接中要舍弃的元组保留就叫做右外连接(RIGHT OUTER JOIN或或RIGHT JOIN)。R和和S作自然连接:把满足作自然连接:把满足R.B=S.B条件的元组保留在新关系中;把条件的元组保留在新关系中;把S关关系中不满足系中不满足R.B=S.B条件的元组也保留在新关系
41、中,相应的值填空。条件的元组也保留在新关系中,相应的值填空。1.3 关系数据库概述关系关系R R和关系和关系S S的右外连接的右外连接A ABCEa a1 1b153a a1 1b267a a2 2b3810a a2 2b382nullnullb5null246信息技术与传媒学院信息技术与传媒学院2022/7/25461.4 1.4 数据库的开发方法与步骤1.4.1 1.4.1 数据库系统分析数据库系统分析 确定系统的功能、性能和运行要求确定系统的功能、性能和运行要求,提供出系,提供出系统功能说明,描述系统的概貌。统功能说明,描述系统的概貌。对数据进行分析,描绘出实体间的联系和数据模对数据进行
42、分析,描绘出实体间的联系和数据模型的建立,提供出数据结构的层次方框图。型的建立,提供出数据结构的层次方框图。提供用户系统描述,给出系统功能和性能的简要提供用户系统描述,给出系统功能和性能的简要描述、使用方法与步骤等内容。描述、使用方法与步骤等内容。47信息技术与传媒学院信息技术与传媒学院2022/7/25471.4 1.4 数据库的开发方法与步骤1.4.2 1.4.2 数据库系统设计数据库系统设计 数据库系统的数据库设计主要是根据数据库系统分析形成相关的电子文档,描述出本系统的数据库结构及其内容组成。在数据库设计过程中,应该遵循数据库的规范化设计要求。数据库系统的功能设计结合数据库设计的初步模
43、型,设计出数据库系统中的各功能模块,以及各功能模块的调用关系、功能组成等内容。数据库系统的输入/输出考虑的是各功能模块的界面设计。对于输入模块考虑提供用户的操作界面及在界面上完成的各种操作;输出模块应考虑输出的内容、格式和方法。48信息技术与传媒学院信息技术与传媒学院1.4 1.4 数据库的开发方法与步骤设计数据库的步骤:设计数据库的步骤:1.1.需求分析需求分析 2.2.建立数据库中的表建立数据库中的表 3.3.确定表的主关键字段确定表的主关键字段 4.4.确定表间的关联关系确定表间的关联关系 5.5.创建其他数据库对象创建其他数据库对象2022/7/254849信息技术与传媒学院信息技术与
44、传媒学院2022/7/25491.1.需求分析需求分析 需求分析就是根据实际应用问题的需要,确定需求分析就是根据实际应用问题的需要,确定创建数据库的目的以及使用方法,确定数据库要创建数据库的目的以及使用方法,确定数据库要完成哪些操作,数据库要建立哪些对象。完成哪些操作,数据库要建立哪些对象。1.4 1.4 数据库的开发方法与步骤50信息技术与传媒学院信息技术与传媒学院2022/7/25501.4 1.4 数据库的开发方法与步骤2.2.建立数据库中的表建立数据库中的表 数据库中的表是数据库的基础数据来源,确定需要建数据库中的表是数据库的基础数据来源,确定需要建立的表,是设计数据库的关键,表设计的
45、好坏直接影响数立的表,是设计数据库的关键,表设计的好坏直接影响数据库其他对象的设计及使用。据库其他对象的设计及使用。设计能够满足需求的表,要考虑以下内容:设计能够满足需求的表,要考虑以下内容:l 每一个表只能包含一个主题信息。每一个表只能包含一个主题信息。l 表中不要包含重复信息。表中不要包含重复信息。l 确定表中的字段个数和数据类型。确定表中的字段个数和数据类型。l 注意字段要具有唯一性和基础性,不要包含推导数据或计算数据。注意字段要具有唯一性和基础性,不要包含推导数据或计算数据。l 所有字段集合要包含描述表主题的全部信息。所有字段集合要包含描述表主题的全部信息。l 字段要有不可再分性,每个
46、字段对应的数据项是最小的单位。字段要有不可再分性,每个字段对应的数据项是最小的单位。51信息技术与传媒学院信息技术与传媒学院2022/7/25513.3.确定表的主关键字段确定表的主关键字段 在表的多个字段中,用于唯一确定每个记录的在表的多个字段中,用于唯一确定每个记录的一个字段或一组字段称为表的主键字段。一个字段或一组字段称为表的主键字段。4.4.确定表间的关联关系确定表间的关联关系 在多个主题的表间建立表间的关联关系,使数在多个主题的表间建立表间的关联关系,使数据库中数据得到充分的利用。据库中数据得到充分的利用。5.5.创建其他数据库对象创建其他数据库对象 其他数据库对象是在表设计的基础上
47、进行的。其他数据库对象是在表设计的基础上进行的。有了表,就可以设计查询、报表、窗体等数据库有了表,就可以设计查询、报表、窗体等数据库对象。对象。1.4 1.4 数据库的开发方法与步骤52信息技术与传媒学院信息技术与传媒学院2022/7/25521.4 1.4 数据库的开发方法与步骤1.4.3 1.4.3 数据库系统实现数据库系统实现 数据库系统的实现应完成开发工具的选择、数据库的实现、系统中各对象对于相关事件的处理并进行编程。数据库的实现通过数据库开发工具,建立数据库文件及其所包含的数据表,建立数据关联,创建数据库系统中各个数据与功能的对象实例,并设定所有对象的相关属性值。数据库系统功能的实现
48、是完成系统中各对象对于相关事件的处理,进行编程。53信息技术与传媒学院信息技术与传媒学院2022/7/25531.4 1.4 数据库的开发方法与步骤1.4.4 1.4.4 数据库系统测试与维护数据库系统测试与维护 一个数据库应用系统的各项功能实现后,必须经过严格的系统测试工作,才可以将开发完成的应用系统投入运行使用。系统测试工作是应用系统成败的关键,在测试工作中应尽可能的查出并改正数据库系统中存在的错误。54信息技术与传媒学院信息技术与传媒学院2022/7/2554总结p数据库系统概述数据库系统概述p数据模型数据模型p关系数据库概述关系数据库概述p数据库系统开发方法与步骤数据库系统开发方法与步
49、骤2022/7/2555Access 数据库程序设计北华大学北华大学信息技术与传媒学院信息技术与传媒学院2022/7/25信息技术与传媒学院信息技术与传媒学院5757本单元教学内容本单元教学内容vAccess 2010简介vAccess 2010对象vAccess 2010的启动和退出vAccess 2010的工作界面v数据库的创建v数据库的打开和关闭v管理数据库本单元教学目的和要求本单元教学目的和要求v掌握Access系统功能特性及界面v掌握创建数据库的方法v掌握打开、关闭和管理数据库的操作方法2022/7/25信息技术与传媒学院信息技术与传媒学院5858v Access 2010 Acce
50、ss 2010 简介简介v Access 2010 Access 2010 对象对象v Access 2010 Access 2010 安装与卸载安装与卸载v Access 2010 Access 2010 启动和退出启动和退出v Access 2010 Access 2010 工作界面工作界面v Access 2010 Access 2010 数据库的创建数据库的创建v 数据库的打开和关闭数据库的打开和关闭v 管理数据库管理数据库Access 2010 概述Access 2010 概述vAccess 2010 Access 2010 简介简介vAccess 2010 Access 2010