关系模型数据库.ppt
《关系模型数据库.ppt》由会员分享,可在线阅读,更多相关《关系模型数据库.ppt(88页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、信息管理系 吴保国BEILIN 吴保国第第2章章 关系数据库基础关系数据库基础n关系数据库采用关系数据模型,已经历了40多年的发展,从理论到技术都已经非常成熟,是目前广泛使用的主流数据库系统,也是数据库课程要讲授的主要内容。n本章主要包括关系的基本概念、关系数据模型、关系完整性约束和关系代数等内容。信息管理系 吴保国本章内容本章内容n2.1 关系模型的基本概念n2.2 关系的定义n2.3 关系操作与代数 n2.4 关系的完整性约束n2.5 关系数据库系统结构 信息管理系 吴保国本章问题本章问题n什么是关系数据模型?什么是关系数据模型?n关系数据模型有哪关系数据模型有哪3 3个要素?并说明这些要
2、素所包含的内个要素?并说明这些要素所包含的内容。容。n实体完整性规则,它涉及哪些概念?约束是如何实现的?实体完整性规则,它涉及哪些概念?约束是如何实现的?n参照完整性规则,它涉及哪些概念?约束是如何实现的?参照完整性规则,它涉及哪些概念?约束是如何实现的?n用户定义完整性可以完成哪些方面的约束?用户定义完整性可以完成哪些方面的约束?n关系完整性约束在保证数据正确性方面是如何发生作用的关系完整性约束在保证数据正确性方面是如何发生作用的?n数据库管理系统的抽象层次?数据库管理系统的抽象层次?信息管理系 吴保国2.1 2.1 关系模型的基本概念关系模型的基本概念n关系模型n用关系(二维表)表示实体以
3、及实体之间联系的模型称为关系数据模型。n关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。1.1.关系数据结构关系数据结构2.2.关系操作集合关系操作集合3.3.关系完整性约束关系完整性约束关系关系模型模型实体完整性实体完整性参照完整性参照完整性用户定义完整性用户定义完整性信息管理系 吴保国2.1.1 2.1.1 关系的数据结构关系的数据结构n在关系模型中,所有的数据都用关系(也称二维表)来作为逻辑结构。n关系模型将信息世界中每一个实体集抽象为数据库中的一个关系,不同实体集之间多对多联系也抽象为关系。n一个关系有固定数量的命名的列(也称属性或字段)和可变数量的行(也称元组或记录)
4、n关系中的每行代表实体集的一个实例,即实体集中的一个实体对应表中的一行;而每个属性包含特定实例的一些性质的一个值,即实体的一个属性对应于表中的一列。n实体集的所有成员有相同的属性。n这些关系的集合构成了关系数据库。其中数据库、表等又是以文件形式存储在计算机的外存储器上。信息管理系 吴保国2.1.2 2.1.2 关系操作集合和关系操作语言关系操作集合和关系操作语言n表达(或描述)关系操作的关系操作语言可以分为三类:1关系代数语言ISBL2关系演算语言元组关系演算语言APLHA、QUEL域关系演算语言QBE3具关系代数与关系演算双重特点的语言SQL信息管理系 吴保国2.1.2 2.1.2 关系操作
5、集合和关系操作语言关系操作集合和关系操作语言n关系模型中常用的关系操作集合包括查询和更新操作二类:n查询操作选择(Select)投影(Project)连接(Join)除(Divide)并(Union)交(Intersection)差(Difference)等查询(Query)操作n更新操作插入(Insert)删除(Delete)修改(Update)操作。信息管理系 吴保国2.1.3 2.1.3 关系的完整性约束关系的完整性约束 n关系的完整性约束是对关系操作时必须满足的约束条件,确保数据库中数据的正确性、一致性和有效性,防止错误的数据进入数据库造成无效操作。n关系的完整性约束条件包括三大类:n
6、实体完整性n参照完整性n用户定义完整性信息管理系 吴保国2.2 2.2 关系的概念关系的概念n2.1.1 域n2.2.2 笛卡儿积n2.2.3 关系的形式化定义信息管理系 吴保国2.2.1 2.2.1 域域n定义:n域是一组具有相同数据类型的值的集合。如整数的集合、字符串的集合、全体学生的集合等。n域通常用名字、数据类型格式以及值的约束范围来指定。n域中所包含的值的个数称域的基数,用m表示。n例如:nD1=S1,S2,S3 m1=3nD2=王家平,张晓红,刘大钢 m2=3nD3=男,女 m3=2 信息管理系 吴保国2.2.2 2.2.2 笛卡儿积笛卡儿积n定义:l给定一组任意域D1,D2,Dn
7、(它们可以包括相同的元素),这n个域的笛卡儿积为:D1D2Dn=(d1,d2,dn)|di Di,i=1,2,n。n其中:lDi称为域l每一个元素(d1,d2,dn)叫做一个n元组,简称元组。l元素中每一个值di叫做一个分量,它来自相应的域(diDi)lDi(i=1,2,n)为有限集,Di中的集合元素个数称为Di的基数,用mi(i=1,2,n)表示。l笛卡儿积D1D2Dn中元组的个数为m1m2.mn,所有域的基数的累乘乘积。信息管理系 吴保国2.2.2 2.2.2 笛卡儿积笛卡儿积笛卡尔积可表示为一个二维表,表中的每行对应一个元组,表中的每列对应一个域。D D1 1D D2 2D Dn nd
8、d1111d d2121d dn1n1d d1 1m md d2 2m md dn nm mD D1 1D D2 2D Dn n=信息管理系 吴保国2.2.2 2.2.2 笛卡儿积笛卡儿积n实例实例,设有学号设有学号SNOSNO、姓名姓名NAMENAME和性别和性别SEXSEX三个域:三个域:SNO =S1,S2,S3 SNO =S1,S2,S3 SN=SN=王家平王家平,张晓红张晓红,刘大钢刘大钢 SEX =SEX =男男,女女 笛卡儿积笛卡儿积 SNOSNSEX=SNOSNSEX=(S1,(S1,王家平王家平,男男),(S1,(S1,王家平王家平,女女),(S1,(S1,张晓红张晓红,男男
9、),(S1,(S1,张晓红张晓红,女女),(S1,(S1,刘大钢刘大钢,男男),(S1,(S1,刘大钢刘大钢,女女),(S2,(S2,王家平王家平,男男),(S2,(S2,王家平王家平,女女),(S2,(S2,张晓红张晓红,男男),(S2,(S2,张晓红张晓红,女女),(S2,(S2,刘大钢刘大钢,男男),(S2,(S2,刘大钢刘大钢,女女),(S3,(S3,王家平王家平,男男),(S3,(S3,王家平王家平,女女),(S3,(S3,张晓红张晓红,男男),(S3,(S3,张晓红张晓红,女女),(S3,(S3,刘大钢刘大钢,男男),(S3,(S3,刘大钢刘大钢,女女)该笛卡儿积的基数为该笛卡儿积
10、的基数为3*3*2=18,即有,即有18个元组。个元组。信息管理系 吴保国2.2.2 2.2.2 笛卡儿积笛卡儿积n笛卡儿积笛卡儿积 SNOSNSEX SNOSNSEX的积用二维表表示的积用二维表表示如左图所示:如左图所示:SNOSNOSNSNSEXSEXS1S1王家平王家平男男S1S1王家平王家平女女S1S1张晓红张晓红男男S1S1张晓红张晓红女女S1S1刘大钢刘大钢男男S1S1刘大钢刘大钢女女S2S2王家平王家平男男S2S2王家平王家平女女S2S2张晓红张晓红男男S2S2张晓红张晓红女女S2S2刘大钢刘大钢男男S2S2刘大钢刘大钢女女S3S3王家平王家平男男S3S3王家平王家平女女S3S3
11、张晓红张晓红男男S3S3张晓红张晓红女女S3S3刘大钢刘大钢男男S3S3刘大钢刘大钢女女l从图中可以看出,笛卡儿积实际上从图中可以看出,笛卡儿积实际上就是一个二维表,二维表的框架由就是一个二维表,二维表的框架由域构成。域构成。l二维表的任意一行就是一个元组二维表的任意一行就是一个元组l每一列的数据来自同一个域,它的每一列的数据来自同一个域,它的第一个分量来自第一个分量来自SNSN,第二个分量来第二个分量来自自NAMENAME,第三个分量来自第三个分量来自SEXSEX。l由于笛卡儿积是一个集合,表中的由于笛卡儿积是一个集合,表中的元组是非排序的,没有重复的元组元组是非排序的,没有重复的元组。信息
12、管理系 吴保国2.2.3 2.2.3 关系的形式化定义关系的形式化定义n定义:笛卡尔积的有限子集称作在域D1,D2,.Dn上的关系。表示为:R(D1,D2,.Dn)。其中:nR表示关系的名字nDi表示第i个属性。D1,D2,Dn表示不同的属性。nn是关系的目或度。n=1表示该关系只有一个属性,称为单元关系;n=2表示该关系有两个属性,称为二元关系,以此类推。n目关系必有 n个属性。信息管理系 吴保国2.2.3 2.2.3 关系的形式化定义关系的形式化定义学号学号姓名姓名年龄年龄性别性别院系院系S1张海燕 19女01S2杨刚19男02S3赵芳20女01S4李成战 18男01关系关系关系名:学生关
13、系名:学生元组集合元组集合(记录记录)关系模式关系模式(表结构表结构)属性属性(列列)和属性名和属性名年龄属性值域:年龄属性值域:12-60性别的值域:男性别的值域:男,女女n关系也可以看作是一个二维表关系也可以看作是一个二维表n表的框架由表的框架由Di(i=1,2,n)构成构成n表的每一行对应一个元组表的每一行对应一个元组n表表的的每每列列对对应应一一个个域域。由由于于域域可可以以是是相相同同的的,为为了了加加以以区区别别,给给每每列列起起一一个个名名字字,称称为为属属性性。因因此此,n目目的的关关系系必必有有n个个属属性性。属属性性的的取取值值范范围称为值域。围称为值域。信息管理系 吴保国
14、2.2.3 2.2.3 关系的形式化定义关系的形式化定义SNOSNONAMENAMESEXSEXS1S1王家平王家平男男S1S1王家平王家平女女S1S1张晓红张晓红男男S1S1张晓红张晓红女女S1S1刘大钢刘大钢男男S1S1刘大钢刘大钢女女S2S2王家平王家平男男S2S2王家平王家平女女S2S2张晓红张晓红男男S2S2张晓红张晓红女女S2S2刘大钢刘大钢男男S2S2刘大钢刘大钢女女s3s3王家平王家平男男s3s3王家平王家平女女s3s3张晓红张晓红男男s3s3张晓红张晓红女女s3s3刘大钢刘大钢男男s3s3刘大钢刘大钢女女n任意取两个子集构成两个关系,分别称为关系RS1和关系RS2。nRS1和
15、RS2有相同的关系框架。我们把具有相同关系框架的关系称为同类关系,因此,RS1和RS2是同类关系。SNOSNONAMENAMESEXSEXS1S1王家平王家平男男S2S2张晓红张晓红女女S3S3刘大钢刘大钢男男RS1RS1SNOSNONAMENAMESEXSEXS3S3王家平王家平男男S2S2张晓红张晓红女女S1S1刘大钢刘大钢男男RS2RS2信息管理系 吴保国2.2.3 2.2.3 关系的形式化定义关系的形式化定义n关系的定义l关系是一个规范的二维表,由关系(二维表)的框架(型)和若干元组(值)构成。l关系是笛卡儿积D1D2Dn的一个有意义的子集。l定义在域D1,D2,Dn(不要求完全相异)
16、上的关系由关系头(Heading)和关系体(Body)组成。关系头由属性名A1,A2,An的集合组成,每个属性Ai正好对应一个域Di(i=1,2,n);关系体由随时间变化的n个元组的集合构成,每个元组依次由一组属性值的集合构成。信息管理系 吴保国2.2.3 2.2.3 关系的形式化定义关系的形式化定义SNOSNONAMENAMESEXSEXS1S1王家平王家平男男S1S1王家平王家平女女S1S1张晓红张晓红男男S1S1张晓红张晓红女女S1S1刘大钢刘大钢男男S1S1刘大钢刘大钢女女S2S2王家平王家平男男S2S2王家平王家平女女S2S2张晓红张晓红男男S2S2张晓红张晓红女女S2S2刘大钢刘大
17、钢男男S2S2刘大钢刘大钢女女s3s3王家平王家平男男s3s3王家平王家平女女s3s3张晓红张晓红男男s3s3张晓红张晓红女女s3s3刘大钢刘大钢男男s3s3刘大钢刘大钢女女n任意取两个子集构成两个关系,分别称为关系RS1和关系RS2。nRS1和RS2有相同的关系框架。我们把具有相同关系框架的关系称为同类关系,因此,RS1和RS2是同类关系。SNOSNONAMENAMESEXSEXS1S1王家平王家平男男S2S2张晓红张晓红女女S3S3刘大钢刘大钢男男RS1RS1SNOSNONAMENAMESEXSEXS3S3王家平王家平男男S2S2张晓红张晓红女女S1S1刘大钢刘大钢男男RS2RS2信息管理
18、系 吴保国1.1.关系的三种类型关系的三种类型基本关系通常称为基表,它是实际存储数据的逻辑表示。查询表查询结果对应的表。视图表由基本表和其它视图表导出的表,是虚表,不对应实际存储的数据。视图访问的数据不作为独特的对象存储在数据库内。当用户访问视图数据时,系统通过视图中的查询获取数据。用户访问关系时所使用的一种方法。信息管理系 吴保国2.2.基本关系具有六条性质基本关系具有六条性质1.元组(通常称记录)不可以重复,即在一个关系中任意两个元组不能完全一样(候选键不能相同)。2.元组的顺序是无关紧要的,各行的顺序可以交换。3.每一列为一个属性(通常称字段),不同的属性要给予不同的属性名,属性名必须唯
19、一。4.各属性的排列次序无关紧要,即属性的次序可以任意交换,但一定是整体交换,属性名和属性值必须作为整列同时交换。5.列是同质的,即每一列的分量是同类型的数据。列的个数和每列的数据类型是固定的,即每一列中的分量是同类型的数据,来自同一个值域。6.任一属性值必须是原子的,不可再分的。(注:满足这个性质的关系称为规范化的关系,简称范式)信息管理系 吴保国2.2.基本关系具有六条性质基本关系具有六条性质学号学号姓名姓名性别性别年龄年龄曾用名曾用名s1s1徐啸徐啸男男2020徐升徐升s2s2辛国年辛国年女女1818辛招弟辛招弟s3s3徐玮徐玮男男1919徐小妹徐小妹s4s4邓一欧邓一欧女女2020邓小
20、欧邓小欧s1s1徐啸徐啸男男2020徐升徐升重复的元组重复的元组重复的元组重复的元组!学号学号 姓名姓名性别性别 年龄年龄 曾用名曾用名s1s1徐啸徐啸男男2020徐升徐升s2s2辛国年辛国年女女1818辛招弟辛招弟s3s3徐玮徐玮男男1919徐小妹徐小妹s4s4邓一欧邓一欧女女2020邓小欧邓小欧学号学号 姓名姓名性别性别 年龄年龄 曾用名曾用名s4s4邓一欧邓一欧 女女2020邓小欧邓小欧s2s2辛国年辛国年女女1818辛招弟辛招弟s3s3徐玮徐玮男男1919徐小妹徐小妹s1s1徐啸徐啸男男2020徐升徐升 1.1.任意两个元组候选键不能相同(不允许有重复的记录)任意两个元组候选键不能相同
21、(不允许有重复的记录)2.2.行行(记录记录)的顺序可以任意交换的顺序可以任意交换信息管理系 吴保国2.2.基本关系具有六条性质基本关系具有六条性质 3.3.表中列表中列(字段字段)的顺序可以任意交换的顺序可以任意交换学号学号姓名姓名性别性别 年龄年龄 曾用名曾用名s1s1徐啸徐啸男男2020徐升徐升s2s2辛国年辛国年 女女1818辛招弟辛招弟s3s3徐玮徐玮男男1919徐小妹徐小妹s4s4邓一欧邓一欧 女女2020邓小欧邓小欧学号学号姓名姓名曾用名曾用名性别性别年龄年龄S1S1徐啸徐啸徐升徐升男男2020S2S2辛国年辛国年 辛招弟辛招弟女女1818S3S3徐玮徐玮徐小妹徐小妹男男1919
22、S4S4邓一欧邓一欧 邓小欧邓小欧女女2020学号姓名姓名性别年龄姓名姓名s1s1徐啸徐啸男男2020张高升张高升s2s2辛国年辛国年女女1818李招弟李招弟s3s3徐玮徐玮男男1919王小小王小小s4s4邓一欧邓一欧女女2020赵小娟赵小娟此处的属性名不能使用姓此处的属性名不能使用姓名,属性名重复!可改用名,属性名重复!可改用为为“曾用名曾用名”4.4.关系中的属性名关系中的属性名(字段名字段名)必须唯一必须唯一信息管理系 吴保国2.2.基本关系具有六条性质基本关系具有六条性质学号学号姓名姓名性别性别年龄年龄曾用名曾用名s1s1徐啸徐啸男20徐升徐升s2s2辛国年辛国年女18辛招弟辛招弟s3
23、s3徐玮徐玮119徐小妹徐小妹s4s4邓一欧邓一欧21981/2/28邓小欧邓小欧 5/5/属性属性(字段字段)名下的诸属性值名下的诸属性值(同列同列)是同类型数据是同类型数据,来自同一个域,来自同一个域此处的属性值类型不!此处的属性值类型不!6.6.每一个分量都是不可分的数据项每一个分量都是不可分的数据项客户号客户号 客户姓名客户姓名 单位名称单位名称邮编邮编 地址地址 电话电话 客户号客户号 客户姓名客户姓名 单位名称单位名称通信地址通信地址电话电话 邮编邮编 地址地址 非规范化关系非规范化关系规范化关系规范化关系信息管理系 吴保国3.3.关系模式关系模式n关系结构的描述称为关系模式(Re
24、lation Schema)。n一个关系模式可以形式化地表示为:R(U,D,DOM,F)其中:lR为关系名lU为组成该关系的属性名集合lD为属性组U中属性所来自的域lDOM为属性向域的映象集合。例如,dom(SUPERVISOR-PERSON)=dom(POSTGRADUATE-PERSON)=PERSON lF为属性间数据的依赖关系集合。信息管理系 吴保国2.2.关系模式关系模式n关系模式通常可以简记为:R(U)或 R(A1,A2,An)其中:lR为关系名,A1,A2,An为属性名,l其它直接说明为属性的数据类型、长度、取值范围等。n例如,学生S关系的关系模式可表示为:S(SNO,SN,SE
25、X,AGE,DNO)n在具体的RDBMS中,通常使用SQL语言的(DDL)来定义关系模式。每一个被定义的关系模式包括关系名,属性名、类型、长度和值域,关系的主键等内容。n例如定义课程表C的SQL语句:CREATE TABLE C(CNO Char(2)PRIMARY KEY,CN VarChar(20)信息管理系 吴保国4.4.关系数据库模式与关系数据库关系数据库模式与关系数据库n关系数据库模式 l关系数据库模式是对关系数据库结构的描述,由一组关系模式的集合构成。n关系数据库l关系数据库是在一个给定的应用领域中,对应于所有实体及实体之间的联系的一组关系的集合。信息管理系 吴保国2.3 2.3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系 模型 数据库
限制150内