欢迎来到天天文库
浏览记录
ID:37452953
大小:536.60 KB
页数:66页
时间:2019-05-12
《数据库系统概论第二章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章关系数据库关系模型具有严格的数学基础,应用数学方法处理数据库中的数据,奠定关系数据库理论基础的人是美国IBM公司的E.F.Codd。模型的提出是在1970年,E.F.Codd的一篇论文“ARelationalModelofDataforSharedDataBanks”开创了数据库系统的新纪元,系统、严格的提出了关系模型。20世纪70年代末关系方法的理论研究已经取得了很大的成果,其中,有两大研究机构及其试验系统,一个是IBM公司的SystemR系统,另一个是美国加州大学伯克利分校的INGRES系统。1981年关系数据库的软件产品就问世了
2、。目前主流的商业数据库系统Oracle,Informix(IBM收购),Sybase,SQLServer,DB2Access,Foxpro,Foxbase1关系模型的组成关系数据结构(实体及实体间的联系均用二维表来表示)关系操作(查询及增、删、改操作两大部分)关系代数语言元组关系演算语言(ALPHA,QUEL)关系数据语言关系演算语言域关系演算语言(QBE)关系代数和关系演算结合的语言(SQL)关系的完整性(实体完整性,参照完整性,用户定义完整性)22.1基本概念2.1.1域(domain)——一组具有相同数据类型的值的集合。例:整数,实数
3、,≤500的整数,性别(男、女)、字符串。2.1.2笛卡尔积(Cartesianproduct)1.定义给定一组域D1,D2,…,Dn,则其笛卡积为:D1D2…Dn={(d1,d2,…,dn)dnDj,j=1,2,…,n}2.说明1)(d1,…,dn)为集合中的一个元素,称为n元组(n–tuple),简称元组。2)元组中每个值di称为分量33)集合中元素无序{a,b,c}={b,a,c}={c,b,a}4)元组中分量有序(a,b,c)≠(b,a,c)属性及其值的对应性。5)笛卡尔积称为一个二维表例设有三个域:D1=男士集合={刘英
4、,刘加}D2=女士集合={白雪,白灵}D=儿童集合={刘学,刘水,刘牛}则D1,D2,D3的笛卡尔积为如下一张二维表:452.1.3关系1.定义D1D2…Dn的任意子集称为在域D1,D2,…,Dn上的关系。记为:R(D1,D2,…,Dn)2.说明1)R为关系名,n为关系的目或度(degree);2)关系是一张二维表;3)可多个候选KEY(candidatekey);4)任选候选KEY之一为主码(primarykey)。例:可从上表中取出一个有意义子集作为一个关系62.1.4外码(internalkey)——对于R1和R2,A1,…,A
5、n为其属性子集,若A1,A2,…,An不是R1的码,但它是R2的码,则称A1,…,An为R1的外码。Student(XH,XM)Course(KH,KM)SC(XH,KH,CJ)SC中的XH,KH为外码。2.1.5关系模式(RelationSchema)1.定义关系的描述:R(A1,…,An)即:R(U,D,DOM,F)R:关系名。U:R中的属性名序列。D:域(取值范围)。DOM:属性到域的映象集(属性类型、长度)。F:属性间数据依赖关系。72.1.6关系数据库1.型:若干关系模式的集合(内含)。2.值:某一时刻每个关系模式对应的具体关系集
6、(外延)。2.1.7视图(View)2.1.8关系的完整性1.实体完整性(Entityintegrity)——主码属性不能为空。2.参照完整性(Referentialintegrity)——若关系R1中含有另一个关系R2中主码的属性组F(R1的外部KEY),则对于R1的每个无组在F上的值必须满足:1)空,或2)等于R2中某个元组的主码值8例:EMPL(ENO,ENAME,DNO)DEPT(DNO,DNAME)则对于EMPL中每个DNO的值必须为:取空(说明该职工还未分配到某部门)DEPT中某个元组的DNO值(该职工不可能分配到一个不存在
7、的部门)3.用户定义完整性(user-definedintegrity)——用户定义的约束。跳高≤100米,人手≤2只92.2关系代数2.2.1概述1、含义:用对关系的运算来表达查询的一种传统方式。2、分类:1)传统集合运算并(∪),交(∩),差(–),笛卡尔积(×)2)专门的关系运算投影(),选择(),连接(),除()3、运算符1)集合运算符:∪、∩、–、×2)专门运算符:、、、3)比较运算符:>、≥、<、≤、=、≠4)逻辑运算符:、、5)括号运算符:()104、特殊记号1)设有关系模式R(A1,A2,…,Ai,…,An
8、)则:tR:t是R的一个元组。t[Ai]:元组t中相应属性Ai的一个分量。112)设A={Ai1,Ai2,…,Aik},Ai1,Ai2,…,Aik是A1,A2,…,An中的一部
此文档下载收益归作者所有