第15章关系数据库 第15章关系数据库 151关系和关系模式15.2关系数据库概述 153关系代数15.4元组关系演算简介 15.5域关系演算简介15.6三种关系运算的等价性 157关系数据库标准语言SOL 158 FoxPro的SO命令 15.9全关系型数据库系统的十二条基本准则简介 BACK
第15章 关系数据库 第15章 关系数据库 15.1 关系和关系模式 15.2关系数据库概述 15.3 关 系 代 数 15.4元组关系演算简介 15.5 域关系演算简介 15.6 三种关系运算的等价性 15.7 关系数据库标准语言SQL 15.8 FoxPro的SQL命令 15.9 全关系型数据库系统的十二条基本准则简介
第15章关系数据库 151关系和关系模式 151.1关系 1.笛卡尔积 定义:给定一组域D1,D2,…,Dn,它们的笛 卡尔积为 D1×D2×…×Dn={(d1,d2,…,dn)|d i∈Di} 例若D1={0,1},D2={a,b},D3={xy,z},则D 1×D2×D3为: {(0,a,x),(0,ay) (0.a,z)(0,b,x),(0b,y),(0,b,z)l,a2x)(l,a2y),(1a,z).(1,b,x), 1,by),(1,b,z)}
第15章 关系数据库 15.1 关系和关系模式 15.1.1 关系 1. 定义: 给定一组域D 1, D 2, …, D n, 它们的笛 D 1×D 2×…×D n={(d 1,d 2,…,d n)|d i∈D i} 例 若D 1={0,1}, D 2={a,b}, D 3={x,y,z}, 则D 1×D 2×D 3 为 : {(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章关系数据库 笛卡尔积中的每一元素(d1dl2,,dn称为一个n元组 ( n--tuple),简称元组。元组中的每一个d称为一个分量 ( Component),亦称属性,分量是有序的 若所有的D都为有限集,基数为m;,则笛卡尔积也 为有限集,基数为: 笛卡尔积所包容的信息是十分有限的,但当研究 的对象是其子集时,情况就不同了
第15章 关系数据库 笛卡尔积中的每一元素(d1 ,d2 ,…,dn )称为一个n元组 (n--tuple), 简称元组。 元组中的每一个di称为一个分量 ( Component) , 亦称属性, 分量是有序的。 若所有的Di都为有限集, 基数为mi, 则笛卡尔积也 为有限集, 基数为: = = n i m mi 1 笛卡尔积所包容的信息是十分有限的, 但当研究 的对象是其子集时, 情况就不同了
第15章关系数据库 2.关系的数学定义 (1)定义 D1×D2×…XDn的子集称为在域D1D2,Dn上的关 系( Relation),用R(D1D2,,D)表示。这里, R是关系名,m是关系的目或度( degree) 关系是元组的集合。每个关系都有一个关系名, 每个属性也有一个属性名。 (2)可用一个二维表来表示一个关系 表名为关系名,每一行为一个元组,每一列为 个属性,每列起首标以属性名
第15章 关系数据库 2. 关系的数学定义 (1) 定义。 D1×D2×…×Dn的子集称为在域D1 ,D2 ,…,Dn上的关 系(Relation) , R(D1 , D2 ,…. , Dn ) 表示。 这里, R是关系名, n是关系的目或度(degree)。 关系是元组的集合。 每个关系都有一个关系名, 每个属性也有一个属性名。 (2) 可用一个二维表来表示一个关系。 表名为关系名, 每一行为一个元组, 每一列为一 个属性, 每列起首标以属性名
第15章关系数据库 3关系数据库的关系 关系数据库的关系与上述数学上的关系有所不同, 它的性质有: ①每一列都是不可分的数据项,且来自同一域。 ②每列有一个属性名,不同列有不同的属性名, 但可出自同一域 ③任意两个元组不能完全相同。 ④列之间的次序、行之间的次序都是不重要的
第15章 关系数据库 3. 关系数据库的关系 关系数据库的关系与上述数学上的关系有所不同, ① 每一列都是不可分的数据项, 且来自同一域。 ② 每列有一个属性名, 不同列有不同的属性名, 但可出自同一域。 ③ 任意两个元组不能完全相同。 ④ 列之间的次序、 行之间的次序都是不重要的
第15章关系数据库 1512关系模式 关系的描述称为关系模式。一个有名关系的关系 模式常简记为它的属性名序列。 若一个关系的名为R,其所有属性名分别为A1 则关系模式记为 RO 事实上,除了上述内容外,关系模式还应描述: 各属性的值域、属性与域之间的映像关系、各属性间 的数据依赖以及一组完整性约束条件。因此,关系模 式的形式化定义是一个多元组。 R(U,D, DOM 1, F
第15章 关系数据库 15.1.2关系模式 关系的描述称为关系模式。 一个有名关系的关系 模式常简记为它的属性名序列。 若一个关系的名为R, 其所有属性名分别为A1 , A2 ,…,An, 则关系模式记为: R (A1 ,A2 ,…,An ) 事实上, 除了上述内容外, 关系模式还应描述: 各属性的值域、 属性与域之间的映像关系、 各属性间 的数据依赖以及一组完整性约束条件。 因此, 关系模 式的形式化定义是一个多元组。 R(U, D, DOM ,I ,F)
第15章关系数据库 多元组中,R为关系名;U是组成R的有限属性集; D是各属性的值域;DOM是属性列到域的映射;I是 组完整性约東条件;F是属性间的一组依赖关系。但 般都简化为用R(U)表示。 关系模式是一个框架,是关系的结构,不随时间而 变化的。关系是关系模式在某一时刻的“当前值”,它 是随着各元组的增删,随着元组各属性值的改变而不断 变化的。实际使用中,常把关系模式和关系统称为关系, 可根据上下文加以区分 一个系统中所有关系的当前值,称为关系数据库
第15章 关系数据库 多元组中, R为关系名; U是组成R的有限属性集; D是各属性的值域; DOM 是属性列到域的映射; I是 一组完整性约束条件; F是属性间的一组依赖关系。 但 一般都简化为用R(U)表示。 关系模式是一个框架, 是关系的结构, 不随时间而 变化的。 关系是关系模式在某一时刻的“当前值” , 它 是随着各元组的增删, 随着元组各属性值的改变而不断 变化的。 实际使用中, 常把关系模式和关系统称为关系, 可根据上下文加以区分。 一个系统中所有关系的当前值, 称为 关系数据库
第15章关系数据库 152关系数据库概述 152.1关系数据结构 关系模型是用关系(即二维表)来表示实体以及 实体间的联系的 1522关系操作 关系操作指对关系进行的存储操作和检索(查询) 操作。关系操作有代数方式和逻辑方式两种,即关系 代数和关系演算,它们在功能上是等价的
第15章 关系数据库 15.2 关系数据库概述 15.2.1 关系模型是用关系(即二维表)来表示实体以及 实体间的联系的。 15.2.2 关系操作指对关系进行的存储操作和检索(查询) 操作。 关系操作有代数方式和逻辑方式两种, 即关系 代数和关系演算, 它们在功能上是等价的
第15章关系数据库 SQL( Structured Query Language,结构化查询) 语言是一种兼有关系代数和关系演算特点的语言,它 集査询( Query)、操纵( Manipulation)、定义 ( Definition)和控制( Control)四个功能于一身,是 种通用的、功能极强的关系数据库操纵语言。关于 SQL语言在后面的章节中将进一步介绍
第15章 关系数据库 SQL(Structured Query Language, 结构化查询) 语言是一种兼有关系代数和关系演算特点的语言, 它 集查询(Query)、 操纵(Manipulation)、 定义 (Definition)和控制(Control)四个功能于一身, 是 一种通用的、 功能极强的关系数据库操纵语言。 关于 SQL语言在后面的章节中将进一步介绍
第15章关系数据库 1523关系模型的三类完整性约束 在讲完整性约束之前,首先要弄清数据库中的几个 概念 (1)关键字或码(Key)。 可惟一标识关系中每一个元组的属性(组)称为该 关系的候选码;若一个关系中有多个候选码,则选取其 中一个为主关键字(或叫主码)。包含在候选码中的属 性叫主属性 (2)外部键或外部码( Foreign Key)。 设有两个关系R和S,其中属性(组)Ⅹ是关系S的
第15章 关系数据库 15.2.3 在讲完整性约束之前, 首先要弄清数据库中的几个 概念。 (1) 关键字或码(Key)。 可惟一标识关系中每一个元组的属性(组)称为该 关系的候选码; 若一个关系中有多个候选码, 则选取其 中一个为主关键字(或叫主码)。 包含在候选码中的属 性叫主属性。 (2) 外部键或外部码(Foreign Key)。 设有两个关系R和S, 其中属性(组)X是关系S的