《Access-数据库程序设计完整版课件全套ppt教学教程最全整套电子讲义幻灯片(最新).ppt》由会员分享,可在线阅读,更多相关《Access-数据库程序设计完整版课件全套ppt教学教程最全整套电子讲义幻灯片(最新).ppt(471页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2023/3/41Access Access 数据库程序设计数据库程序设计2信息技术与传媒学院信息技术与传媒学院2023/3/42掌握数据库最常用的术语和基本概念掌握数据库最常用的术语和基本概念;明确常用数据模型组成要素,最常用的数据明确常用数据模型组成要素,最常用的数据模型的区别及优缺点模型的区别及优缺点;了解关系模型的组成及基本的关系运算了解关系模型的组成及基本的关系运算;了解关系数据库的完整性设计和规范化设计。了解关系数据库的完整性设计和规范化设计。本单元教学目的和要求3信息技术与传媒学院信息技术与传媒学院2023/3/43第一章第一章 数据库基础理论数据库基础理论1.1 1.1 数据库
2、系统概述数据库系统概述1.2 1.2 数据模型数据模型1.3 1.3 关系数据库概述关系数据库概述1.4 1.4 数据库系统开发方法与步骤数据库系统开发方法与步骤4信息技术与传媒学院信息技术与传媒学院2023/3/441.1.1 1.1.1 数据库系统的构成数据库系统的构成 数据库系统(数据库系统(Database SystemDatabase System,简称,简称DBSDBS)是采用数据库技术的计算机系统,主要由数据库、是采用数据库技术的计算机系统,主要由数据库、数据库管理系统和数据库应用系统三部分构成的运数据库管理系统和数据库应用系统三部分构成的运行实体。行实体。1.1 1.1 数据库
3、系统概述数据库系统概述5信息技术与传媒学院信息技术与传媒学院1.1 1.1 数据库系统概述数据库系统概述2023/3/451.1.数据库数据库(DataBase(DataBase,简称,简称DB)DB)所谓数据库,是以一定的组织方式将相关的数据所谓数据库,是以一定的组织方式将相关的数据组织在一起,长期存放在计算机内,可为多个用组织在一起,长期存放在计算机内,可为多个用户共享,与应用程序彼此独立,统一管理的数据户共享,与应用程序彼此独立,统一管理的数据集合。集合。数据库是数据库系统的核心部分,是数据库系统数据库是数据库系统的核心部分,是数据库系统的管理对象。的管理对象。6信息技术与传媒学院信息技
4、术与传媒学院2023/3/461.1 1.1 数据库系统概述数据库系统概述2.2.数据库管理系统数据库管理系统 数据库管理系统(数据库管理系统(Database Management SystemDatabase Management System,简称,简称DBMSDBMS)是提供建立、管理、维护和控制)是提供建立、管理、维护和控制数据库功能的一组计算机软件。数据库功能的一组计算机软件。数据库管理系统的目标是使用户能够科学地组数据库管理系统的目标是使用户能够科学地组织和存储数据,能够从数据库中高效地获得需要织和存储数据,能够从数据库中高效地获得需要的数据,方便地处理数据。的数据,方便地处理数
5、据。7信息技术与传媒学院信息技术与传媒学院2023/3/473.3.数据库应用系统数据库应用系统数据库应用系统是指在数据库管理系统的基础上由数据库应用系统是指在数据库管理系统的基础上由用户根据自己的实际需要自行开发的应用程序。用户根据自己的实际需要自行开发的应用程序。不同的人员涉及不同的数据抽象级别。不同的人员涉及不同的数据抽象级别。数据管理员负责管理和控制数据库系统;数据管理员负责管理和控制数据库系统;应用程序开发人员负责设计应用系统的程序模块、应用程序开发人员负责设计应用系统的程序模块、编写应用程序;编写应用程序;最终用户通过应用系统提供的用户界面使用数据库。最终用户通过应用系统提供的用户
6、界面使用数据库。1.1 1.1 数据库系统概述数据库系统概述8信息技术与传媒学院信息技术与传媒学院2023/3/481.1 1.1 数据库系统概述数据库系统概述 数数据据库库、数数据据库库管管理理系系统统、数数据据库库系系统统三三个个概概念的区别念的区别数据库强调的是数据数据库强调的是数据数据库管理系统是管理数据库的工具软件数据库管理系统是管理数据库的工具软件数据库系统强调的则是一个整体系统数据库系统强调的则是一个整体系统9信息技术与传媒学院信息技术与传媒学院2023/3/491.1 1.1 数据库系统概述数据库系统概述1.1.2 1.1.2 数据库管理系统功能数据库管理系统功能数据定义数据操
7、作数据库的运行管理数据组织、存储与管理数据库的保护数据库的维护通信10信息技术与传媒学院信息技术与传媒学院2023/3/4101.2 1.2 数据模型1.2.1 1.2.1 数据模型的概念数据模型的概念数据(数据(DataData)存储在某一种媒体上能够被识别的物理符号。包括数字、文存储在某一种媒体上能够被识别的物理符号。包括数字、文字、字母和其他字符,以及图形、图像、动画、声音等。字、字母和其他字符,以及图形、图像、动画、声音等。模型模型(Model)Model)是现实世界的抽象。是现实世界的抽象。数据模型数据模型(Data ModelData Model)是数据特征的抽象,是数据库管理的教
8、学形式框)是数据特征的抽象,是数据库管理的教学形式框架。数据库系统中用以提供信息表示和操作手段的形式构架。架。数据库系统中用以提供信息表示和操作手段的形式构架。数据模型包括数据模型包括数据库数据的结构部分、数据库数据的操作部分和数据库数据库数据的结构部分、数据库数据的操作部分和数据库数据的约束条件。数据的约束条件。数据模型按不同的应用层次分成三种类型数据模型按不同的应用层次分成三种类型:概念数据模型、逻辑数据模:概念数据模型、逻辑数据模型、物理数据模型。型、物理数据模型。11信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型1.2.2 1.2.2 概念数据模型概念数据模型 概念数据模
9、型是面向数据库用户的实现世界的模概念数据模型是面向数据库用户的实现世界的模型,主要用来描述世界的概念化结构,它使数据库型,主要用来描述世界的概念化结构,它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及的设计人员在设计的初始阶段,摆脱计算机系统及DBMSDBMS的具体技术问题,集中精力分析数据以及数的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的数据管理系统据之间的联系等,与具体的数据管理系统(Database Management SystemDatabase Management System,简称,简称DBMSDBMS)无关。)无关。概念数据模型必须换成逻辑数据模型,才
10、能在概念数据模型必须换成逻辑数据模型,才能在DBMSDBMS中实现。中实现。2023/3/41112信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型实体实体-联系模型(联系模型(E-RE-R模型)模型)实体:实体:实体:实体:指客观存在并可相互区别的物体。可以是具指客观存在并可相互区别的物体。可以是具体的人、事物,也可以是抽象的概念或联系。如一个体的人、事物,也可以是抽象的概念或联系。如一个人、一个部门,一个产品,客户关系等都是实体。人、一个部门,一个产品,客户关系等都是实体。属性:属性:属性:属性:实体具有的某一种特性。如实体具有的某一种特性。如 人的姓名、性别、人的姓名、性别、
11、年龄等属性,这些属性组合起来表征一个人。年龄等属性,这些属性组合起来表征一个人。码:码:码:码:唯一标识实体的属性集称为码。如身份证号码唯一标识实体的属性集称为码。如身份证号码域:域:域:域:属性的取值范围称为该属性的域。如性别域为属性的取值范围称为该属性的域。如性别域为(男、女)(男、女)2023/3/41213信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型实体型:实体型:实体型:实体型:用实体名及其属性名集合来抽象和描述用实体名及其属性名集合来抽象和描述同类实体,称为实体型。同类实体,称为实体型。例如例如:学生(学号,姓名,性别,出生日期,专业)学生(学号,姓名,性别,出生日
12、期,专业)学生(学号,姓名,性别,出生日期,专业)学生(学号,姓名,性别,出生日期,专业)实体集:实体集:实体集:实体集:同型实体的集合成为实体集。同型实体的集合成为实体集。例如例如联系:联系:联系:联系:实体间的对应关系。两个实体之间的联系分为三类:两个实体之间的联系分为三类:两个实体之间的联系分为三类:两个实体之间的联系分为三类:一对一联系(一对一联系(一对一联系(一对一联系(1:11:11:11:1)一对多联系(一对多联系(一对多联系(一对多联系(1:n1:n1:n1:n)多对多联系(多对多联系(多对多联系(多对多联系(m:nm:nm:nm:n)2023/3/41314信息技术与传媒学院
13、信息技术与传媒学院1.2 1.2 数据模型(1 1 1 1)一对一联系()一对一联系()一对一联系()一对一联系(1 1 1 1:1 1 1 1)对于 一个实体集A(表)中的每一个实体,另一个实体集B(表)至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。例如,学生表和学生家庭表之间是一对一的联系。例如,学生表和学生家庭表之间是一对一的联系。(2 2 2 2)一对多联系()一对多联系()一对多联系()一对多联系(1 1 1 1:n n n n)一个实体集A(表)的每一条记录与另一个实体集B(表)中的多条记录相关联。例如,学生表和成绩表之间是一对多的联系。例如,学生表和成绩
14、表之间是一对多的联系。(3 3 3 3)多对多联系()多对多联系()多对多联系()多对多联系(m m m m:n n n n)多对多联系表示一个实体集A(表)的多条记录与另一个实体集B(表)中的多条记录相关联。例如,学生成绩表和课程表之间是多对多的联系。例如,学生成绩表和课程表之间是多对多的联系。2023/3/41415信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型2023/3/415E-RE-RE-RE-R数据模型用数据模型用数据模型用数据模型用E-RE-RE-RE-R图描述。图中提供了实体型、图描述。图中提供了实体型、图描述。图中提供了实体型、图描述。图中提供了实体型、属性和
15、联系的方法。属性和联系的方法。属性和联系的方法。属性和联系的方法。实体型用矩形表示,属性用椭圆形表示,联系实体型用矩形表示,属性用椭圆形表示,联系用菱形表示。用菱形表示。教师讲课教师讲课E ER R图图16信息技术与传媒学院信息技术与传媒学院1.2 1.2 数据模型2023/3/4161.2.3 1.2.3 逻辑数据模型逻辑数据模型常用的有层次模型、网状模型、关系模型和面向对象模型。1.1.1.1.层次数据模型层次数据模型层次数据模型层次数据模型用树形结构表示实体及其之间的联系的模型称为层次模型。用树形结构表示实体及其之间的联系的模型称为层次模型。满足以下条件的数据模型称为层次模型:满足以下条
16、件的数据模型称为层次模型:只有一个结点无父结点,这个结点称为只有一个结点无父结点,这个结点称为“根结点根结点”。根结点以外的子结点,向上仅有一个父结点,向下有若干根结点以外的子结点,向上仅有一个父结点,向下有若干子结点子结点。学校生物学院管理学院信息学院建筑学院计算机系信息科学系17信息技术与传媒学院信息技术与传媒学院2023/3/41.2 1.2 数据模型2网状数据模型 用网状结构表示实体及其之间的联系的模型称为网状模型。用网状结构表示实体及其之间的联系的模型称为网状模型。满足以下条件的数据模型称为网状模型:满足以下条件的数据模型称为网状模型:结点有多于一个的父结点。结点有多于一个的父结点。
17、有一个以上的结点无父结点。有一个以上的结点无父结点。系教研室学生教师宿舍学校课程教材教师学生教室18信息技术与传媒学院信息技术与传媒学院2023/3/4181.2 1.2 数据模型3关系模型 关系模型是建立在关系代数基础上的,一个关系模型的逻辑结构是一个二维表,它由行和列组成。在关系模型中操作的对象和结果都是二维表,这种二维表就称为关系,用关系表示的数据模型称为关系模型。读者编号读者编号姓名姓名性别性别出生日期出生日期办证日期办证日期VIP联系电话联系电话2007001王天依女1986-10-262007-9-3TRUE836685112007002裴志红女1986-4-302007-9-3F
18、ALSE836685112007003赵乐男1986-11-242007-9-3FALSE836685112007004杜超男1986-4-282007-9-3FALSE836686312007005张寅雪女1985-11-152007-9-3FALSE8366851119信息技术与传媒学院信息技术与传媒学院2023/3/4191.2 1.2 数据模型关系模型的特点:关系模型的特点:关系中的每一分量不可再分,是最基本的数据单位;每一竖列的分量是同属性的,列数根据需要而设,且各列的顺序是任意的;每一横行由一个个体事物的多属性构成,且各行的顺序可以是任意的;一个关系是一张二维表,不允许有相同的属性
19、名,也不允许有相同的元组。20信息技术与传媒学院信息技术与传媒学院2023/3/4201.2 1.2 数据模型4.面向对象模型 面向对象模型面向对象模型是近几年来发展起来的一种新兴的是近几年来发展起来的一种新兴的数据模型。一个面向对象模型是用面向对象观点来描数据模型。一个面向对象模型是用面向对象观点来描述现实世界实体述现实世界实体(对象对象)的逻辑组织、对象间限制、联的逻辑组织、对象间限制、联系等的模型。系等的模型。21信息技术与传媒学院信息技术与传媒学院2023/3/4211.3 关系数据库概述关系数据库关系数据库 是若干个关系的集合。也可以说,是若干个关系的集合。也可以说,关系数据库是由若
20、干张二维表组成的。关系数据库是由若干张二维表组成的。一个关系数据库由若干个数据表组成,一个关系数据库由若干个数据表组成,每个数据表又由若干条记录组成。每个数据表又由若干条记录组成。在关系数据库中,数据表为基本文件,在关系数据库中,数据表为基本文件,每个数据表之间具有独立性,而且若干个数据之每个数据表之间具有独立性,而且若干个数据之间具有独立性,而且若干个数据表之间又具有相间具有独立性,而且若干个数据表之间又具有相关性,使得数据操作方式简单。关性,使得数据操作方式简单。22信息技术与传媒学院信息技术与传媒学院2023/3/4221.3 关系数据库概述1.3.1 1.3.1 关系术语关系术语 关系
21、:关系:关系模型中一个关系就是一个二维表。元组:元组:表中的一行即为一个元组。属性:属性:表中的一列即为一个属性,给每个属性起一个名字即为属性名。商品号商品号商品名称商品名称21000001电冰箱31000001洗衣机41000001空调记录(元组)记录(元组)字段(属性)字段(属性)23信息技术与传媒学院信息技术与传媒学院2023/3/4231.3 关系数据库概述码:码:唯一地标识一个元组的一个或若干个属性的集合。主码主码:当一个关系有多个码时,选定其中一个作为主键字。外码外码:若在诸属性中,某属性不是该关系的主码,却是另一个关系的主码,则称该属性为外部关键字。域域:属性的取值范围。分量分量
22、:元组中的一个属性值。24信息技术与传媒学院信息技术与传媒学院2023/3/4241.3 关系数据库概述1.3.2 1.3.2 关系数据库的特点关系数据库的特点数据集中控制数据独立数据共享减少数据冗余数据结构化统一的数据保护功能25信息技术与传媒学院信息技术与传媒学院2023/3/4251.3 关系数据库概述1.3.3 1.3.3 关系的完整性关系的完整性 关系的完整性关系的完整性,即关系中的数据及具有关联的数据间必即关系中的数据及具有关联的数据间必须遵循的制约和依存关系。关系的完整性用于保证数据的正须遵循的制约和依存关系。关系的完整性用于保证数据的正确性、有效性和相容性。关系的完整性包括:确
23、性、有效性和相容性。关系的完整性包括:p域完整性域完整性p实体完整性实体完整性p参照完整性参照完整性 其中实体完整性和参照完整性是关系模型必须满足的完其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为是关系的两个不变性,应该由关系系整性约束条件,被称为是关系的两个不变性,应该由关系系统自动支持。统自动支持。26信息技术与传媒学院信息技术与传媒学院2023/3/4261.3 关系数据库概述1.1.域完整性域完整性 域完整性是针对某一具体字段的数据设置的域完整性是针对某一具体字段的数据设置的约束条件。约束条件。AccessAccess中中提供定义和检验域完整性的方法提供定义和检验
24、域完整性的方法。例如,可以将例如,可以将“性别性别”字段定义为分别取两个字段定义为分别取两个值值“男男”或或“女女”,将,将“成绩成绩”字段值定义为字段值定义为O O100100之间。之间。(字段)(字段)27信息技术与传媒学院信息技术与传媒学院2023/3/4271.3 关系数据库概述2.2.实体完整性实体完整性 保证表中记录的唯一性,即在表中不允许出保证表中记录的唯一性,即在表中不允许出现重复记录。现重复记录。在在AccessAccess中利用主键或候选键来保证记录的中利用主键或候选键来保证记录的唯一性。唯一性。主键既不能取空值主键既不能取空值NullNull,也不能有重复,也不能有重复值
25、。值。例如,在学生表中字段例如,在学生表中字段“学号学号”作为主键,其作为主键,其值不能为空值值不能为空值NullNull,也不能有两条记录的学号相,也不能有两条记录的学号相同。同。(记录)(记录)28信息技术与传媒学院信息技术与传媒学院2023/3/4281.3 关系数据库概述3.3.参照完整性参照完整性 参照完整性是相关联的两个表之间的约束参照完整性是相关联的两个表之间的约束,当输入、删除或更新表中记录时,保证各相关表之当输入、删除或更新表中记录时,保证各相关表之间数据的完整性。间数据的完整性。例如,如果在学生表和成绩表之间用学号建例如,如果在学生表和成绩表之间用学号建立关联,学生表是主表
26、,成绩表是从表,那么,在立关联,学生表是主表,成绩表是从表,那么,在向成绩表中输入一条新记录时,系统要检查新记录向成绩表中输入一条新记录时,系统要检查新记录的学号是否在学生表中已存在。如果存在,则允许的学号是否在学生表中已存在。如果存在,则允许执行输入操作;否则拒绝输入,以保证输入记录的执行输入操作;否则拒绝输入,以保证输入记录的合法性。合法性。(多表关联)(多表关联)1.3.4 1.3.4 关系运算关系运算关系的基本运算有两种:关系的基本运算有两种:传统的集合运算:传统的集合运算:并、差、交等并、差、交等专门的关系运算:专门的关系运算:选择、投影、连接、除法等选择、投影、连接、除法等1.3
27、关系数据库概述传统的集合运算传统的集合运算 传统的集合运算包含并、差、交等。两个关系必须具有相同的关系传统的集合运算包含并、差、交等。两个关系必须具有相同的关系模式,即元组(记录)有相同的结构。模式,即元组(记录)有相同的结构。1.3 关系数据库概述关系关系R教师编号姓名性别所属学院学历职称js000117高明武TRUE计算机学院本科副教授js000124许春兰FALSE技术学院本科讲师js000208张思德TRUE机械学院硕士教授js000213李鹏TRUE美术学院本科副教授js000218孙大可TRUE护理学院硕士讲师关系关系S教师编号姓名性别所属学院学历职称js000225吕丽FALSE
28、理学院硕士助教js000226田立君FALSE文学院本科讲师js000228李鸣锋TRUE电气学院硕士助教js000314张进博TRUE政法学院博士教授js000316王英FALSE机械学院本科教授1.并(UNION)设有两个关系R和S,它们具有相同的结构。R和S的并是由属于R或属于S的元组组成的集合,运算符为。记为T=RS。1.3 关系数据库概述RSRS教师编号姓名性别所属学院学历职称js000117高明武TRUE计算机学院本科副教授js000124许春兰FALSE技术学院本科讲师js000208张思德TRUE机械学院硕士教授js000213李鹏TRUE美术学院本科副教授js000218孙大
29、可TRUE护理学院硕士讲师js000225吕丽FALSE理学院硕士助教js000226田立君FALSE文学院本科讲师js000228李鸣锋TRUE电气学院硕士助教js000314张进博TRUE政法学院博士教授js000316王英FALSE机械学院本科教授2.差(DIFFERENCE)R和S的差是由属于R但不属于S的元组组成的集合,运算符为。记为T=RS。1.3 关系数据库概述关系关系R教师编号姓名性别所属学院学历职称js000117高明武TRUE计算机学院本科副教授js000124许春兰FALSE技术学院本科讲师js000208张思德TRUE机械学院硕士教授js000213李鹏TRUE美术学院
30、本科副教授js000218孙大可TRUE护理学院硕士讲师关系关系S教师编号姓名性别所属学院学历职称js000117高明武TRUE计算机学院本科副教授js000124许春兰FALSE技术学院本科讲师js000208张思德TRUE机械学院硕士教授js000314张进博TRUE政法学院博士教授js000316王英FALSE机械学院本科教授R RS S教师编号姓名性别所属学院学历职称js000213李鹏TRUE美术学院本科副教授js000218孙大可TRUE护理学院硕士讲师3.交(INTERSECTION)R和S的交是由既属于R又属于S的元组组成的集合,运算符为。记为T=RS。1.3 关系数据库概述关
31、系关系R教师编号姓名性别学历职称js000117高明武TRUE本科副教授js000124许春兰FALSE本科讲师js000208张思德TRUE硕士教授js000213李鹏TRUE本科副教授js000218孙大可TRUE硕士讲师关系关系S教师编号姓名性别学历职称js000117高明武TRUE本科副教授js000124许春兰FALSE本科讲师js000228李鸣锋TRUE硕士助教js000314张进博TRUE博士教授js000316王英FALSE本科教授RSRS教师编号姓名性别学历职称js000213李鹏TRUE本科副教授js000218孙大可TRUE硕士讲师专门的关系运算专门的关系运算1.选择运
32、算选择运算从关系中找出满足给定条件的那些元组称为选择。其中的条件是以逻辑表从关系中找出满足给定条件的那些元组称为选择。其中的条件是以逻辑表达式给出的,值为真的元组将被选取。这种运算是从水平方向抽取元组。达式给出的,值为真的元组将被选取。这种运算是从水平方向抽取元组。1.3 关系数据库概述教师基本情况表教师基本情况表教师编号姓名性别学历职称js000117高明武TRUE本科副教授js000124许春兰FALSE本科讲师js000208张思德TRUE硕士教授js000213李鹏TRUE本科副教授js000218孙大可TRUE硕士讲师如:如:WHERE(教师基本情况表教师基本情况表.职称职称)=教授
33、教授)教师编号教师编号姓名姓名性别性别学历学历职称职称js000208张思德TRUE硕士教授2.投影运算投影运算从关系模式中挑选若干属性组成新的关系称为投影。这是从列的角度进行从关系模式中挑选若干属性组成新的关系称为投影。这是从列的角度进行的运算,相当于对关系进行垂直分解。的运算,相当于对关系进行垂直分解。1.3 关系数据库概述教师基本情况表教师基本情况表教师编号姓名性别学历职称js000117高明武TRUE本科副教授js000124许春兰FALSE本科讲师js000208张思德TRUE硕士教授js000213李鹏TRUE本科副教授js000218孙大可TRUE硕士讲师如:如:SELECT 教
34、师基本情况表教师基本情况表.教师编号教师编号,教师基本情况表教师基本情况表.姓名姓名教师编号教师编号姓名姓名js000117高明武js000124许春兰js000208张思德js000213李鹏js000218孙大可 笛卡尔积运算笛卡尔积运算设:关系设:关系R为为n列(列(n个属性),个属性),k1行(行(k1个元组)个元组)关系关系S为为m列(列(m个属性),个属性),k2行(行(k2个元组)个元组)则关系则关系R R和和S S的笛卡尔积,是的笛卡尔积,是R R中每个元组与中每个元组与S S中中每个元组连接组成的新关系。记作:每个元组连接组成的新关系。记作:R R S S。注意:注意:新关系
35、的属性个数等于新关系的属性个数等于n+m,元组个数等于,元组个数等于k1*k2。1.3 关系数据库概述1.3 关系数据库概述3.连接运算连接运算连接是根据给定的条件,从两个已知关系连接是根据给定的条件,从两个已知关系R和和S的笛卡尔积中,选取满的笛卡尔积中,选取满足连接条件(属性之间)的若干元组组成新的关系。足连接条件(属性之间)的若干元组组成新的关系。记作:记作:R_F S 其中其中F是选择条件。是选择条件。条件连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组。条件连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组。相等连接:从关系相等连接:从关系R与与S的笛卡尔积中选取满足等
36、值条件的元组。的笛卡尔积中选取满足等值条件的元组。自然连接:也是等值连接,从两个关系的笛卡尔积中,选取公共属性满自然连接:也是等值连接,从两个关系的笛卡尔积中,选取公共属性满足等值条件的元组,但新关系不包含重复的属性。存在关系足等值条件的元组,但新关系不包含重复的属性。存在关系R和关系和关系S,它们具有相同的属性(属性组),它们具有相同的属性(属性组)A,根据属性,根据属性A对对R和和S进行等值连接,进行等值连接,并在连接结果中去掉重复列。记为并在连接结果中去掉重复列。记为T=RS1.3 关系数据库概述1.3 关系数据库概述2023/3/4信息与传媒学院信息与传媒学院39关系关系R R教师编号
37、教师姓名课程名称js000117高明武大学英语js000208张思德大学计算机基础js000213李鹏高级语言程序设计关系关系S S学生编号学生姓名课程名称201501110101孙立强大学英语201506620102李明翰大学英语201501110202张茹新大学计算机基础201505510102何康勇高级语言程序设计R R S S教师编号教师姓名课程名称学生编号学生姓名js000117高明武大学英语201501110101孙立强js000117高明武大学英语201506620102李明翰js000208张思德大学计算机基础201501110202张茹新js000213李鹏高级语言程序设计2
38、01505510102何康勇4.除法运算除法运算在关系代数中,除法运算可理解为笛卡尔积的逆运算。在关系代数中,除法运算可理解为笛卡尔积的逆运算。设被除关系设被除关系R为为m元关系,除关系元关系,除关系S为为n元关系,那么它们的商为元关系,那么它们的商为m-n元关系,记为元关系,记为RS。商的构成原则是:将被除关系。商的构成原则是:将被除关系R中的中的m-n列,按其值列,按其值分成若干组,检查每一组的分成若干组,检查每一组的n列值的集合是否包含除关系列值的集合是否包含除关系S,若包含则取,若包含则取m-n列的值作为商的一个元组,否则不取。列的值作为商的一个元组,否则不取。设有关系设有关系R(X,
39、Y)和和S(Y),其中,其中X,Y可以是单个属性或属性集,可以是单个属性或属性集,RS的结果组成的新关系为的结果组成的新关系为T。RS运算规则:如果在运算规则:如果在(R)中能找到某一行)中能找到某一行u,使得这一行和,使得这一行和S的的笛卡尔积含在笛卡尔积含在R中,则中,则T中有中有u。1.3 关系数据库概述1.3 关系数据库概述2023/3/4信息与传媒学院信息与传媒学院41R RA ABCa a1 1b1c2a a2 2b3c7a a3 3b4c6a a1 1b2c3a a4 4b6c6a a2 2b2c3a a1 1b2c1S SB BCb b1 1c2b b2 2c1b b2 2c3
40、R RS SA Aa a1 15.外连接运算外连接运算是在连接条件的某一边添加一个符号是在连接条件的某一边添加一个符号“*”,其连接结果是为符号所,其连接结果是为符号所在边添加一个全部由在边添加一个全部由“空值空值”组成的行。组成的行。1.3 关系数据库概述R RABCa1b15a1b26a2b38a2b412S SBEb13b27b310b32b52u外连接外连接如果把舍弃的元组保存在结果关系中,而在其他属性上填空值如果把舍弃的元组保存在结果关系中,而在其他属性上填空值(Null),这,这种连接就叫做外连接(种连接就叫做外连接(OUTER JOIN)。)。R和和S作自然连接:把满足作自然连接
41、:把满足R.B=S.B条件的元组保留在新关系中条件的元组保留在新关系中;把不满把不满足足R.B=S.B条件的元组也保留在新关系中,相应的值填空。条件的元组也保留在新关系中,相应的值填空。1.3 关系数据库概述关系关系R R和关系和关系S S的外连接的外连接ABCEa1b153a1b267a2b3810a2b382a2b412nullnullb5null2u左外连接左外连接如果只把左边关系如果只把左边关系R中要舍弃的元组保留就叫做左外连接中要舍弃的元组保留就叫做左外连接(LEFT OUTER JOIN或或LEFT JOIN)R和和S作自然连接:把满足作自然连接:把满足R.B=S.B条件的元组保留
42、在新关系中;把条件的元组保留在新关系中;把R关关系中不满足系中不满足R.B=S.B条件的元组也保留在新关系中,相应的值填空。条件的元组也保留在新关系中,相应的值填空。1.3 关系数据库概述关系关系R R和关系和关系S S的左外连接的左外连接ABCEa1b153a1b267a2b3810a2b382a2b412nullu右外连接右外连接如果只把右边关系如果只把右边关系S中要舍弃的元组保留就叫做右外连接中要舍弃的元组保留就叫做右外连接(RIGHT OUTER JOIN或或RIGHT JOIN)。R和和S作自然连接:把满足作自然连接:把满足R.B=S.B条件的元组保留在新关系中;把条件的元组保留在新
43、关系中;把S关关系中不满足系中不满足R.B=S.B条件的元组也保留在新关系中,相应的值填空。条件的元组也保留在新关系中,相应的值填空。1.3 关系数据库概述关系关系R R和关系和关系S S的右外连接的右外连接ABCEa1b153a1b267a2b3810a2b382nullb5null246信息技术与传媒学院信息技术与传媒学院2023/3/4461.4 1.4 数据库的开发方法与步骤1.4.1 1.4.1 数据库系统分析数据库系统分析 确定系统的功能、性能和运行要求确定系统的功能、性能和运行要求,提供出系,提供出系统功能说明,描述系统的概貌。统功能说明,描述系统的概貌。对数据进行分析,描绘出实
44、体间的联系和数据模对数据进行分析,描绘出实体间的联系和数据模型的建立,提供出数据结构的层次方框图。型的建立,提供出数据结构的层次方框图。提供用户系统描述,给出系统功能和性能的简要提供用户系统描述,给出系统功能和性能的简要描述、使用方法与步骤等内容。描述、使用方法与步骤等内容。47信息技术与传媒学院信息技术与传媒学院2023/3/4471.4 1.4 数据库的开发方法与步骤1.4.2 1.4.2 数据库系统设计数据库系统设计 数据库系统的数据库设计主要是根据数据库系统分析形成相关的电子文档,描述出本系统的数据库结构及其内容组成。在数据库设计过程中,应该遵循数据库的规范化设计要求。数据库系统的功能
45、设计结合数据库设计的初步模型,设计出数据库系统中的各功能模块,以及各功能模块的调用关系、功能组成等内容。数据库系统的输入/输出考虑的是各功能模块的界面设计。对于输入模块考虑提供用户的操作界面及在界面上完成的各种操作;输出模块应考虑输出的内容、格式和方法。48信息技术与传媒学院信息技术与传媒学院1.4 1.4 数据库的开发方法与步骤设计数据库的步骤:设计数据库的步骤:1.1.需求分析需求分析 2.2.建立数据库中的表建立数据库中的表 3.3.确定表的主关键字段确定表的主关键字段 4.4.确定表间的关联关系确定表间的关联关系 5.5.创建其他数据库对象创建其他数据库对象2023/3/44849信息
46、技术与传媒学院信息技术与传媒学院2023/3/4491.1.需求分析需求分析 需求分析就是根据实际应用问题的需要,确定需求分析就是根据实际应用问题的需要,确定创建数据库的目的以及使用方法,确定数据库要创建数据库的目的以及使用方法,确定数据库要完成哪些操作,数据库要建立哪些对象。完成哪些操作,数据库要建立哪些对象。1.4 1.4 数据库的开发方法与步骤50信息技术与传媒学院信息技术与传媒学院2023/3/4501.4 1.4 数据库的开发方法与步骤2.2.建立数据库中的表建立数据库中的表 数据库中的表是数据库的基础数据来源,确定需要建数据库中的表是数据库的基础数据来源,确定需要建立的表,是设计数
47、据库的关键,表设计的好坏直接影响数立的表,是设计数据库的关键,表设计的好坏直接影响数据库其他对象的设计及使用。据库其他对象的设计及使用。设计能够满足需求的表,要考虑以下内容:设计能够满足需求的表,要考虑以下内容:l 每一个表只能包含一个主题信息。每一个表只能包含一个主题信息。l 表中不要包含重复信息。表中不要包含重复信息。l 确定表中的字段个数和数据类型。确定表中的字段个数和数据类型。l 注意字段要具有唯一性和基础性,不要包含推导数据或计算数据。注意字段要具有唯一性和基础性,不要包含推导数据或计算数据。l 所有字段集合要包含描述表主题的全部信息。所有字段集合要包含描述表主题的全部信息。l 字段
48、要有不可再分性,每个字段对应的数据项是最小的单位。字段要有不可再分性,每个字段对应的数据项是最小的单位。51信息技术与传媒学院信息技术与传媒学院2023/3/4513.3.确定表的主关键字段确定表的主关键字段 在表的多个字段中,用于唯一确定每个记录的在表的多个字段中,用于唯一确定每个记录的一个字段或一组字段称为表的主键字段。一个字段或一组字段称为表的主键字段。4.4.确定表间的关联关系确定表间的关联关系 在多个主题的表间建立表间的关联关系,使数在多个主题的表间建立表间的关联关系,使数据库中数据得到充分的利用。据库中数据得到充分的利用。5.5.创建其他数据库对象创建其他数据库对象 其他数据库对象
49、是在表设计的基础上进行的。其他数据库对象是在表设计的基础上进行的。有了表,就可以设计查询、报表、窗体等数据库有了表,就可以设计查询、报表、窗体等数据库对象。对象。1.4 1.4 数据库的开发方法与步骤52信息技术与传媒学院信息技术与传媒学院2023/3/4521.4 1.4 数据库的开发方法与步骤1.4.3 1.4.3 数据库系统实现数据库系统实现 数据库系统的实现应完成开发工具的选择、数据库的实现、系统中各对象对于相关事件的处理并进行编程。数据库的实现通过数据库开发工具,建立数据库文件及其所包含的数据表,建立数据关联,创建数据库系统中各个数据与功能的对象实例,并设定所有对象的相关属性值。数据
50、库系统功能的实现是完成系统中各对象对于相关事件的处理,进行编程。53信息技术与传媒学院信息技术与传媒学院2023/3/4531.4 1.4 数据库的开发方法与步骤1.4.4 1.4.4 数据库系统测试与维护数据库系统测试与维护 一个数据库应用系统的各项功能实现后,必须经过严格的系统测试工作,才可以将开发完成的应用系统投入运行使用。系统测试工作是应用系统成败的关键,在测试工作中应尽可能的查出并改正数据库系统中存在的错误。54信息技术与传媒学院信息技术与传媒学院2023/3/454总结p数据库系统概述数据库系统概述数据库系统的构成和数据库管理系统的功能数据库系统的构成和数据库管理系统的功能数据库系