资源描述:
《数据库原理与应用第15章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第15章关系数据库第15章关系数据库15.1关系和关系模式15.2关系数据库概述15.3关系代数15.4元组关系演算简介15.5域关系演算简介15.6三种关系运算的等价性15.7关系数据库标准语言SQL15.8FoxPro的SQL命令15.9全关系型数据库系统的十二条基本准则简介第15章关系数据库15.1关系和关系模式15.1.1关系1.笛卡尔积 定义:给定一组域D1,D2,…,Dn,它们的笛卡尔积为: D1×D2×…×Dn={(d1,d2,…,dn)
2、di∈Di}例若D1={0,1},D2={a,b},D3={x,y
3、,z},则D1×D2×D3为:{(0,a,x),(0,a,y),(0,a,z),(0,b,x),(0,b,y),(0,b,z),(1,a,x),(1,a,y);(1,a,z),(1,b,x),(1,b,y),(1,b,z)} 。第15章关系数据库笛卡尔积中的每一元素(d,d,…,d)称为一个n元组12n(n--tuple),简称元组。元组中的每一个d称为一个分量i(Component) ,亦称属性,分量是有序的。若所有的D都为有限集,基数为m,则笛卡尔积也ii为有限集,基数为:nmmii1笛卡尔积所包容的信息是十
4、分有限的,但当研究的对象是其子集时,情况就不同了。第15章关系数据库2.关系的数学定义(1)定义。D×D×…×D的子集称为在域D,D,…,D上的关12n12n系(Relation) ,用 R(D,D,….,D) 表示。这里,12nR是关系名,n是关系的目或度(degree)。 关系是元组的集合。每个关系都有一个关系名,每个属性也有一个属性名。 (2)可用一个二维表来表示一个关系。表名为关系名,每一行为一个元组,每一列为一个属性,每列起首标以属性名。 第15章关系数据库3.关系数据库的关系关系数据库的关系与上述数学上的关
5、系有所不同,它的性质有: ①每一列都是不可分的数据项,且来自同一域。 ②每列有一个属性名,不同列有不同的属性名,但可出自同一域。 ③任意两个元组不能完全相同。 ④列之间的次序、行之间的次序都是不重要的。第15章关系数据库15.1.2关系模式关系的描述称为关系模式。一个有名关系的关系模式常简记为它的属性名序列。 若一个关系的名为R,其所有属性名分别为A,1A,…,A,则关系模式记为:2nR(A,A,…,A)12n事实上,除了上述内容外,关系模式还应描述:各属性的值域、属性与域之间的映像关系、各属性间的数据依赖以及一组完整
6、性约束条件。因此,关系模式的形式化定义是一个多元组。R(U,D,DOM,I,F)第15章关系数据库多元组中,R为关系名;U是组成R的有限属性集;D是各属性的值域;DOM 是属性列到域的映射;I是一组完整性约束条件;F是属性间的一组依赖关系。但一般都简化为用R(U)表示。 关系模式是一个框架,是关系的结构,不随时间而变化的。关系是关系模式在某一时刻的“当前值”,它是随着各元组的增删,随着元组各属性值的改变而不断变化的。实际使用中,常把关系模式和关系统称为关系,可根据上下文加以区分。 一个系统中所有关系的当前值,称为关系
7、数据库。第15章关系数据库15.2关系数据库概述15.2.1关系数据结构 关系模型是用关系(即二维表)来表示实体以及实体间的联系的。15.2.2关系操作 关系操作指对关系进行的存储操作和检索(查询)操作。关系操作有代数方式和逻辑方式两种,即关系代数和关系演算,它们在功能上是等价的。 第15章关系数据库SQL(StructuredQueryLanguage,结构化查询)语言是一种兼有关系代数和关系演算特点的语言,它集查询(Query)、操纵(Manipulation)、定义(Definition)和控制(Control
8、)四个功能于一身,是一种通用的、功能极强的关系数据库操纵语言。关于SQL语言在后面的章节中将进一步介绍。第15章关系数据库15.2.3关系模型的三类完整性约束 在讲完整性约束之前,首先要弄清数据库中的几个概念。(1)关键字或码(Key)。可惟一标识关系中每一个元组的属性(组)称为该关系的候选码;若一个关系中有多个候选码,则选取其中一个为主关键字(或叫主码)。包含在候选码中的属性叫主属性。(2)外部键或外部码(ForeignKey)。 设有两个关系R和S,其中属性(组)X是关系S的第15章关系数据库关键字,但不是关系R的
9、关键字,则把X叫做关系R的外部码(外部键)。1.实体完整性(EntityIntegrity)如果一个属性是某个关系的主关键字组成部分,则该属性就不能取空值。实体完整性约束的理由是: ①一个基本关系通常对应现实世界的一个实体集; ②现实世界的实体是可区分的,即它们具有某种唯一性标识; 第15章关系数据库③在关系模型中由主关键字作为惟