关系数据结构关系定义关系性质关系模式关系的完整性课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《关系数据结构关系定义关系性质关系模式关系的完整性课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系 数据结构 定义 性质 模式 完整性 课件
- 资源描述:
-
1、2022-6-8数据库原理1l 关系数据结构关系数据结构l 关系定义关系定义l 关系性质关系性质 l 关系模式关系模式l 关系的完整性关系的完整性l 实体完整性实体完整性 l 参照完整性参照完整性l 用户定义完整性用户定义完整性l 关系代数关系代数l 关系演算关系演算关系数据库关系数据库 第第2章章2022-6-8数据库原理2奠定关系奠定关系数据库的数据库的理论基础理论基础2022-6-8数据库原理3 关系模型概述关系模型概述关系模型关系模型关系数据结构关系数据结构关系操作集合关系操作集合关系完整性约束关系完整性约束数据结构单一,实体间的数据结构单一,实体间的联系用关系表示,数据的联系用关系表
2、示,数据的逻辑结构是一张二维表。逻辑结构是一张二维表。集合操作方式,即操作集合操作方式,即操作对象和结构都是集合。对象和结构都是集合。实体完整性、参照完整实体完整性、参照完整性和用户完整性。性和用户完整性。2022-6-8数据库原理4关系操作关系操作(Select)(Select)选选 择择(Join)(Join)连连 接接(Project)(Project)投投 影影(Divide)(Divide) 除除(Union)(Union) 并并(Intersection)(Intersection) 交交 (Difference) (Difference) 差差(Insert)(Insert)增增
3、 加加(Delete)(Delete)删删 除除(Update)(Update)修修 改改2022-6-8数据库原理5关系数据语言关系数据语言关系代数语言关系代数语言关系演算语言关系演算语言具有关系代数和关系演算双重特点的语言具有关系代数和关系演算双重特点的语言元组关系演算语言元组关系演算语言域关系演算语言域关系演算语言例如:例如:例如:例如:, , 例如:例如:例如:例如:2022-6-8数据库原理6 关系数据结构及形式化定义关系数据结构及形式化定义 关系关系 域()域() 定义定义 域是一组具有相同数据类型的值的集合。域是一组具有相同数据类型的值的集合。 在关系中用域来表示属性的取值范围在
4、关系中用域来表示属性的取值范围 域中所包含的值的个数称域的基数域中所包含的值的个数称域的基数( (用表示用表示) )D2= , , , 2022-6-8数据库原理7 若若D Di i(i i1 1,2 2,n n)为有限集,其)为有限集,其基数基数(Cardinal numberCardinal number)为为m mi i(i i1 1,2 2,n n),则),则D D1 1D D2 2D Dn n的基数为:的基数为: M M= mi i=1i=1 n n 定义定义 给定一组域,给定一组域,(允许部分或全部相同)。,(允许部分或全部相同)。, ,的笛卡尔积为:,的笛卡尔积为: (,(,),
5、), 2022-6-8数据库原理8设有域设有域D2= , , , D1D2=( A, ),(),(A, ),(),(A, ),(),(A, ) . . . . . . . . . . . . (K, ),(),(K, ),(),(K, ),(),(K, ) , , , , , , , , , , , , ,K K.A AA A花色花色牌值牌值分量分量元组元组基数基数 : u 笛卡尔积可表示为一个二维表。笛卡尔积可表示为一个二维表。u 表中的每行对应一个元组,表中的每列对应一个域。表中的每行对应一个元组,表中的每列对应一个域。 ,则笛卡尔积,则笛卡尔积2022-6-8数据库原理9定义定义 的子集
6、称为在域,的子集称为在域,,上的关系,上的关系, 表示为表示为(,) (,) 。其中:为关系的名;为关系的度或目其中:为关系的名;为关系的度或目()()。u 关系中每个元素是关系中的元组,通常用表示;关系中每个元素是关系中的元组,通常用表示;u 当时,称为单元关系当时,称为单元关系( );( );u 当时,称为二元关系当时,称为二元关系( )( );u 同样可以把关系看作是一个二维表:同样可以把关系看作是一个二维表: 每一行对应一个元组;每一行对应一个元组; 表的每一列对应一个域,每个域起一个名字表的每一列对应一个域,每个域起一个名字称为称为 属性属性; ;2022-6-8数据库原理10关系类
7、型关系类型基本关系基本关系查询表查询表视图表视图表实际存在的表,是实际存储数据的逻辑表示。实际存在的表,是实际存储数据的逻辑表示。查询结果对应的表。查询结果对应的表。由基本表或其他视图表导出的表,是虚表,由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。不对应实际存储的数据。2022-6-8数据库原理11例:设例:设 男人集合男人集合() () 王强、李东、张兵王强、李东、张兵 女人集合女人集合() () 赵红、吴芳赵红、吴芳 儿童集合儿童集合() () 王辉、李明、李亮王辉、李明、李亮 ()求上面三个集合的笛卡儿积()求上面三个集合的笛卡儿积赵红赵红王辉王辉赵红赵红李明李明赵红赵红
8、李亮李亮吴芳吴芳王辉王辉吴芳吴芳李明李明吴芳吴芳李亮李亮李东李东赵红赵红王辉王辉李东李东赵红赵红李明李明李东李东赵红赵红李亮李亮李东李东吴芳吴芳王辉王辉李东李东吴芳吴芳李明李明李东李东吴芳吴芳李亮李亮张兵张兵赵红赵红王辉王辉张兵张兵赵红赵红李明李明张兵张兵赵红赵红李亮李亮张兵张兵吴芳吴芳王辉王辉张兵张兵吴芳吴芳李明李明张兵张兵吴芳吴芳李亮李亮李亮李亮吴吴芳芳李东李东李明李明吴吴芳芳李东李东王辉王辉赵赵红红王王强强()构造一个家庭关系,可表示为:()构造一个家庭关系,可表示为: (,)(,)2022-6-8数据库原理12主码的诸属性称为主属性。主码的诸属性称为主属性。若一个关系有多个候选码,则选
9、定其中的一个为主码。若一个关系有多个候选码,则选定其中的一个为主码。关系的某一属性组不是的码,但是其他某一关系的码,称为的外部码。关系的某一属性组不是的码,但是其他某一关系的码,称为的外部码。. .主主 码码( )( ). .主属性主属性( )( )若关系中的某一属性组的值能唯一的标识一个元组,称该属性组为候选码。若关系中的某一属性组的值能唯一的标识一个元组,称该属性组为候选码。. .候选码候选码( )( ). .非码属性非码属性( )( ). .全全 码码()()不包含在任何候选码中的属性称为非码属性。不包含在任何候选码中的属性称为非码属性。. .外部码外部码( )( )关系模式的所有属性组
10、是这个关系模式的候选码,称为全码。关系模式的所有属性组是这个关系模式的候选码,称为全码。2022-6-8数据库原理13例:例:学生:学生:()()课程:课程:()()选课:选课:()(): : 候选码:;候选码:;主码:主码:假设没有学生重名: : 候选码:;候选码:; 主码:主码:: : 候选码:候选码:()(); 主主 码:码:()(); 外部码:外部码:2022-6-8数据库原理14l 列是同质的列是同质的(),即每一列中的分量是同一类型的即每一列中的分量是同一类型的l 数据,来自同一个域。数据,来自同一个域。l 不同的列可对应于同一个域,但给予不同的属性名。不同的列可对应于同一个域,但
11、给予不同的属性名。l 列的顺序无所谓,即列的次序可以任意交换。列的顺序无所谓,即列的次序可以任意交换。l 任意两个元组不能完全相同,即无重复行。任意两个元组不能完全相同,即无重复行。l 行的顺序无所谓,即行的次序可以任意交换。行的顺序无所谓,即行的次序可以任意交换。l 分量必须取原子值,即每一个分量都必须是不可分的数据项。分量必须取原子值,即每一个分量都必须是不可分的数据项。基本关系性质:基本关系性质:注:许多关系数据注:许多关系数据 产品,产品,不完全具备该性质不完全具备该性质 关系模型要求关系必须是关系模型要求关系必须是规范化规范化的,规范条件最基本的一的,规范条件最基本的一条就是,性质条
12、就是,性质6 6。规范化的关系简称为。规范化的关系简称为范式范式(Normal Form)(Normal Form)。2022-6-8数据库原理15 关系模式关系模式定义定义 对关系的描述称为关系模式,记为对关系的描述称为关系模式,记为 ( (,);,);其中:为关系名,为组成该关系的属性名集合,为中属性所来自的域,其中:为关系名,为组成该关系的属性名集合,为中属性所来自的域,为属性向域的映象集合,为属性间数据的依赖关系集合。为属性向域的映象集合,为属性间数据的依赖关系集合。()()关系模式通常简记为关系模式通常简记为: (): () 关系模式就是关系的框架(表框架)关系模式就是关系的框架(表
13、框架) 它是对关系结构的描述它是对关系结构的描述 域名及属性向域的映象常直接说明为属性的类型、长度域名及属性向域的映象常直接说明为属性的类型、长度关系模式是型,是静态的、稳定的;关系模式是型,是静态的、稳定的;关系是关系模式的值,是动态的、随时间而变化的。关系是关系模式的值,是动态的、随时间而变化的。 2022-6-8数据库原理16 学生关系模式学生关系模式 (, , , , , , ) 学生课程关系模式学生课程关系模式 (, , ) (, , ) 课程关系模式课程关系模式 (, , ) (, , )2022-6-8数据库原理17 关系数据库关系数据库 在关系模型中,实体以及实体间的联系都是用
14、关系来表示。在关系模型中,实体以及实体间的联系都是用关系来表示。在一个给定的应用领域中,所有实体及实体之间的联系的关系在一个给定的应用领域中,所有实体及实体之间的联系的关系的集合构成一个关系数据库。的集合构成一个关系数据库。 关系数据库也有型和值之分:关系数据库也有型和值之分: 型(关系数据库模式):型(关系数据库模式): 对关系数据库的描述,包括若干域对关系数据库的描述,包括若干域的定义以及在这些域上定义的若干关系模式。的定义以及在这些域上定义的若干关系模式。 值:关系模式在某一时刻对应的关系的集合,通常称为关系值:关系模式在某一时刻对应的关系的集合,通常称为关系数据库。数据库。 2022-
15、6-8数据库原理18 关系的完整性关系的完整性完整性约束完整性约束实体完整性实体完整性参照完整性参照完整性用户定义的完整性用户定义的完整性关系的两个不变性关系的两个不变性2022-6-8数据库原理19( )规则规则 若属性是基本关系若属性是基本关系()()()()上的主属性,则属性上的主属性,则属性 不能取空值。不能取空值。例:选课中的均不能取空值。例:选课中的均不能取空值。实体完整性实体完整性p 该规则是针对基本关系而言的;该规则是针对基本关系而言的;p 现实世界中的实体是可区分的,即它们具有某种唯一性标识;现实世界中的实体是可区分的,即它们具有某种唯一性标识;p 关系模型中以主码作为唯一性
16、标识;关系模型中以主码作为唯一性标识;p 主码中的属性即主属性不能取空值。主码中的属性即主属性不能取空值。2022-6-8数据库原理20( )规则规则 若属性(或属性组)是关系的外码,它与基本关系的主若属性(或属性组)是关系的外码,它与基本关系的主码相对应(基本关系和不一定是不同的关系),则对于中每个码相对应(基本关系和不一定是不同的关系),则对于中每个元组在上的取值必须为:元组在上的取值必须为: 或者取空值(的每个属性值均为空值);或者取空值(的每个属性值均为空值); 或者等于中的某个元组的主码值。或者等于中的某个元组的主码值。参照完整性参照完整性定义外码与主码之间的定义外码与主码之间的引用
17、规则引用规则2022-6-8数据库原理21例:职工例:职工 () () 部门部门 () ()例:学生例:学生 (, , , , , , ) 课程课程 (, , ) (, , ) 学生课程学生课程 (, , ) (, , )则:中的为空或为中的的值则:中的为空或为中的的值则:中的为空或为中的的值中的为空或为中的的值。则:中的为空或为中的的值中的为空或为中的的值。2022-6-8数据库原理22( )用户定义的完整性用户定义的完整性 用户自定义完整性是针对某一具体数据的约束条件,反用户自定义完整性是针对某一具体数据的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求,由应用映某一具体应用所涉及
18、的数据必须满足的语义要求,由应用环境决定。环境决定。例:例: 属性的取值范围属性的取值范围 ; 属性的非空限制属性的非空限制2022-6-8数据库原理23关关 系系 数数 据据 库库 语语 言言关系代数关系代数具有关系代数和关系演算双重特点具有关系代数和关系演算双重特点关系演算关系演算域演算域演算关系数据库关系数据库标准语言标准语言用关系运算来表达查询,以为代表用关系运算来表达查询,以为代表用谓词公式来表达查询元组演算用谓词公式来表达查询元组演算( (以行为变量以行为变量) ),以为代表,以为代表域演算域演算( (以列为变量以列为变量) ),以为代表,以为代表元组演算元组演算元组演算、域演算元
19、组演算、域演算2022-6-8数据库原理24 关系代数关系代数一种抽象的查询语言,用对关系的运算来表达查询。一种抽象的查询语言,用对关系的运算来表达查询。运算的三大要素:运算的三大要素:p 运算对象运算对象关系关系p 运算符运算符p 运算结果运算结果关系关系集合运算符(并、差、交)集合运算符(并、差、交)专门的关系运算符(广义笛卡尔积、选择、投影、专门的关系运算符(广义笛卡尔积、选择、投影、 连接、除)连接、除)算术比较符(大小于、大小于等于、等于、不等于)算术比较符(大小于、大小于等于、等于、不等于)逻辑运算符(非、与、或)逻辑运算符(非、与、或)2022-6-8数据库原理25 传统的集合运
20、算传统的集合运算l 并并()()运算运算c1c1b1b1a1a1c1c1b2b2a2a2c2c2b3b3a1a1c2c2b2b2a1a1C CB BA AR1R2R1R2 设关系和关系具有相同的目(即两个关系都有个属性),且设关系和关系具有相同的目(即两个关系都有个属性),且相应的属性取自同一个域,则关系与关系的并由属于或属于的元相应的属性取自同一个域,则关系与关系的并由属于或属于的元组组成。其结果关系仍为目关系。记作:组组成。其结果关系仍为目关系。记作: c1c1b2b2a2a2c2c2b2b2a1a1c1c1b1b1a1a1C CB BA AR1R1c1c1b2b2a2a2c2c2b3b3
21、a1a1c2c2b2b2a1a1C CB BA AR2R22022-6-8数据库原理26c1c1b1b1a1a1C CB BA AR1R1R2R2 设关系设关系R R和关系和关系S S具有相同的目具有相同的目n n,且相应的属性取自同一个域,且相应的属性取自同一个域,则关系则关系R R与关系与关系S S的差由属于的差由属于R R而不属于而不属于S S的所有元组组成,其结果的所有元组组成,其结果仍为仍为n n目关系。记作:目关系。记作: RS=t | tR t Sl 差差()()运算运算c1c1b2b2a2a2c2c2b2b2a1a1c1c1b1b1a1a1C CB BA AR1R1c1c1b2
22、b2a2a2c2c2b3b3a1a1c2c2b2b2a1a1C CB BA AR2R22022-6-8数据库原理27c1c1b2b2a2a2c2c2b2b2a1a1c1c1b1b1a1a1C CB BA Ac1c1b2b2a2a2c2c2b3b3a1a1c2c2b2b2a1a1C CB BA AR1R1R2R2 设关系和关系具有相同的目,且相应的属性取自同一个设关系和关系具有相同的目,且相应的属性取自同一个域,则关系与关系的交由既属于又属于的元组组成,其结果域,则关系与关系的交由既属于又属于的元组组成,其结果仍为目关系。仍为目关系。记作:记作: l 交交()()运算运算2022-6-8数据库原
23、理28l 广义笛卡尔积广义笛卡尔积( )( )运算运算R1R1R2R2c1c1b1b1a1a1c1c1b1b1a1a1c1c1b1b1a1a1C CB BA Ac1c1b2b2a2a2c2c2b3b3a1a1c2c2b2b2a1a1C CB BA A.c2c2b3b3a1a1c2c2b2b2a1a1.c2c2b2b2a1a1c2c2b2b2a1a1 两个分别为目和目的关系和的广义笛卡尔积是一个两个分别为目和目的关系和的广义笛卡尔积是一个()()列的列的元组的集合。元组的前列是关系的一个元组,后列是关系的一元组的集合。元组的前列是关系的一个元组,后列是关系的一个元组。若有个元组,有个元组,则关系
24、和关系的广义笛卡尔个元组。若有个元组,有个元组,则关系和关系的广义笛卡尔积有个元组。记作:积有个元组。记作: c1c1b2b2a2a2c2c2b2b2a1a1c1c1b1b1a1a1C CB BA Ac1c1b2b2a2a2c2c2b3b3a1a1c2c2b2b2a1a1C CB BA AR1R1R2R22022-6-8数据库原理29 专门的关系运算专门的关系运算学号学号 学生姓名学生姓名 所属系名所属系名 学生年龄学生年龄 S# SN SD SAS# SN SD SA S1 A CS 20 S1 A CS 20 S2 B CS 21 S2 B CS 21 S3 C MA 19 S3 C MA
25、 19 S4 D CI 19 S4 D CI 19 S5 E MA 20 S5 E MA 20 S6 F CS 22 S6 F CS 222022-6-8数据库原理30 选择运算是从关系中选取使公式为真的元组。这是从行的选择运算是从关系中选取使公式为真的元组。这是从行的角度进行的运算。角度进行的运算。 在关系中选择满足给定条件的元组,记作:在关系中选择满足给定条件的元组,记作: () () () ()真真 是一个公式,表示形式为由逻辑运算符(是一个公式,表示形式为由逻辑运算符(,?) )连接各算连接各算术表达式组成。术表达式组成。 算术表达式的基本形式为:算术表达式的基本形式为:。 , , ,
展开阅读全文