资源描述:
《第2章关系数据库系统结构》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、情境二关系数据库系统结构关系数据库系统的特点:①简单明了的数据模型。②具有严禁的理论基础。③实体表示方法和实体之间联系的表示方法一致。④处理多对多的联系方便。⑤使用的关系数据语言功能强大。任务一关系模型的数据模式一、关系数据结构(一)基本术语1.关系。一个关系实质上是一张二维表,每个关系有一个关系名。在计算机里,一个关系存储为一个文件。2.元组。表中的行称为元组,每一行为一个元组,对应存储文件中的一个记录值。属性。表中的列称为属性,每一列有一个属性名,属性值相当于记录中的数据项或者字段值。3.域。属性的取值
2、范围称为域,即不同元组对同一个属性的取值所限定的范W,或称为属性的值域。每一个属性都对应一个值域,不同的属性也可以有相同的值域。关系模式。对关系的描述称为关系模式,一个关系模式对应一个关系文件的结构。其格式为:关系名(属性名1,属性名2,,属性名n)。4.笛卡儿积。设一组域DI,D2,…,Dn(n>2),允许有相同的域,这一组域DI,D2,…,Dn的笛卡儿积为:DlXD2X-XDn={(dl,d2,…,dn)
3、di[Di,i=l,2,…,n},其中每一个元素(dl,d2,…,dn)叫作一个n元组或简称元组,
4、元组中的每一个值di叫作一个分量。(二)关系中的键1.主键:关系有一个重要的性质,即在任何关系中,不能有两个完全相同的元组。确定了主键的值,就能唯一地确定一个元组。主键可以为单个属性,也可以为属性的组合。2.候选键:凡是在一个关系中具有主键特性的属性成属性组,均称为候选键。因为它们都具有被选为主键的条件,所以一个关系可能有多个候选键,但只能选其中一个为主键。3.外键:当关系中的某个或某些属性由另一个关系的主键构成时,则该属性或属性组称为外键。(二)关系的性质1.任意两个元组(两个行)不能完全相同。2.关系巾
5、元组(行)的次序是不重要的,可以任意交换。3.属性(列)的次序也是不重要的,可以任意交换。4.同一列屮的分量,必须来自同一个域,是同类型的数据。5.属性必须有不同的名称,但不同的属性可以出自相同的域,即它们的分量可以取值于同一个域。6.每一个分量必须是原子的,即是不可再分的数据项。任务二关系代数关系代数是一种抽象的查询语言,是关系数据操纵语言的一种传统表达方式,它是用对关系的运算来表达査询的。任何一种运算都是将一定的运算符作用于一定的运算对象上,得到预期的运算结果。所以运算对象、运算符、运算结果是运算的三大
6、要素。关系代数的运算对象是关系,运算结果亦为关系。关系代数用到的运算符包括四类:集合运算符、专门的关系运算符、算术比较符和逻辑运算符。一、传统的集合运算(一)传统的集合运算传统的集合运算是二目运算,包括并、差、交、广义笛卡儿积四种运算。当并、差、交用于关系运算时,参加运算的关系必须是相容的和可并的,即它们应有相同的目n(即两个关系都有n个属性),且相应的属性值来自同一个域。两个分别为n目和m目关系R和S的广义笛卡儿积是一个(n+m)目的关系,关系中的每一个元组的前n列是关系R中的一个元组,后m列是关系S中的
7、一个元组。二、专门的关系运算专门的关系运算,包括选择、投影、连接和除。1.选择是一种单目运©,操作对象仅有一个关系,其作用是在关系的水平方向上选取符合给定条件的子集。2.投影是一种单目运算,其作用为在关系的垂直方向上选取含有给定属性的子集。3.连接是一种二目运算,即操作对象有两个关系,其作用是按照给定的条件,把两个关系中的所有元组按一切可能的组合方式拼接起来。任务三关系的完整性规则数据完整性巾完整性规则来定义,关系模型的完整性规则是对关系的某种约束条件。关系模型屮可以有三类完整性约束:实体完整性、参照完整性
8、和用户定义的完整性。(一)实体完整性实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值。实体完整性规则是对关系中的主属性值的约朿,规定关系中的元组在组成主键的属性上不能有空值。基本关系的所有主属性都不能取空伉,而不仅是主键整体不能取空伉。实体完整性规则的说明:①实体完整性规则是针对基本关系而言的。一个基本表通常对应现实世界的一个实体集。②现实世界中的实体是可区分的,即它们具有某种唯一性标识。③相应地,关系模型屮以主键作为唯一性标识。④主键中的属性即主属性不能取空值。(二)参照完整性参照完整性规
9、则:若属性(属性组)F是关系R的外键,它与关系S的主键Ks相对应(关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主键值。(三)用户定义的完整性用户定义的完整性是针对某一具体关系数据库的约朿条件。这是针对某一具体数据的约束条件,由应用环境决定。它反映某一具体应用所涉及的数据必须满足的语义要求。用户定义的完整性通常是定义对关系屮除主键与