第2章关系数据库的基本理论 学习要点 1、关系数据结构、关系操作和完整性约束 2、关系数据结构的数学定义 3、关系的性质、关系系统 4、实体完整性、参照完整性 5、用户定义的完整性 6、关系代数
第2章 关系数据库的基本理论 学习要点 1、关系数据结构、关系操作和完整性约束 2、关系数据结构的数学定义 3、关系的性质、关系系统 4、实体完整性、参照完整性 5、用户定义的完整性 6、关系代数
第2章关系数据库的基本理论 2.1关系模型概述 22关系数据结构 23关系的完整性 24关系代数
第2章 关系数据库的基本理论 2.1 关系模型概述 2.2 关系数据结构 2.3 关系的完整性 2.4 关系代数
第2章关系数据库的基本理论 关系数据库系统具有独特的风格,概括起 来有以下五个特点。 (1)简单明了的数据模型。 (2)具有严谨的理论基础。 (3)实体表示方法和实体之间联系的表示 方法一致。 (4)处理多对多的联系方便。 (5)使用的关系数据语言功能强大
第2章 关系数据库的基本理论 关系数据库系统具有独特的风格,概括起 来有以下五个特点。 (1)简单明了的数据模型。 (2)具有严谨的理论基础。 (3)实体表示方法和实体之间联系的表示 方法一致。 (4)处理多对多的联系方便。 (5)使用的关系数据语言功能强大
2.1关系模型概述 关系模型是关系数据库的基础。关系模型由数据 结构、关系操作集合和完整性约束三部分组成 211关系数据结构 关系模型的数据结构非常单一,在用户看来,关 系模型中数据的逻辑结构是一张二维表。但关系模型 的这种简单的数据结构能够表达丰富的语义,描述出 现实世界的实体以及实体间的各种联系
2.1 关系模型概述 关系模型是关系数据库的基础。关系模型由数据 结构、关系操作集合和完整性约束三部分组成。 2.1.1 关系数据结构 关系模型的数据结构非常单一,在用户看来,关 系模型中数据的逻辑结构是一张二维表。但关系模型 的这种简单的数据结构能够表达丰富的语义,描述出 现实世界的实体以及实体间的各种联系
2.1.2关系操作 关系操作采用集合操作方式,即操作的对 象和结果都是集合。这种操作方式也称为一次 个集合的方式。 关系模型中常用的关系操作有两类,一是 査询操作,包括选择、投影、连接、除、并、 交、差等;二是增、删、改操作。 表达(或描述)关系操作的关系数据语言 可以分为三类,具体分类情况如下:
2.1.2 关系操作 关系操作采用集合操作方式,即操作的对 象和结果都是集合。这种操作方式也称为一次 一个集合的方式。 关系模型中常用的关系操作有两类,一是 查询操作,包括选择、投影、连接、除、并、 交、差等;二是增、删、改操作。 表达(或描述)关系操作的关系数据语言 可以分为三类,具体分类情况如下:
士 2.1.2关系操作 (1)关系代数 关系代数是用对关系的运算来表达查询要 求的方式。 (2)关系演算 关系演算是用谓词来表达查询要求的方式。 (3)介于关系代数和关系演算之间的语言SQL ( Standard Query Language)
2.1.2 关系操作 (1)关系代数 关系代数是用对关系的运算来表达查询要 求的方式。 (2)关系演算 关系演算是用谓词来表达查询要求的方式。 (3)介于关系代数和关系演算之间的语言SQL (Standard Query Language)
21.3完整性约束 关系模型提供了丰富的完整性控制机制, 允许定义三类完整性:实体完整性、参照完整 性和用户定义的完整性。其中实体完整性和参 照完整性是关系模型必须满足的完整性约束条 件,应该由关系系统自动支持
2.1.3 完整性约束 关系模型提供了丰富的完整性控制机制, 允许定义三类完整性:实体完整性、参照完整 性和用户定义的完整性。其中实体完整性和参 照完整性是关系模型必须满足的完整性约束条 件,应该由关系系统自动支持
22关系数据结构 因为关系模型是建立在集合代数的基础上 的,所以本节从集合论角度给出关系数据结构 的形式化定义。 221数学定义 关系的理论基础是集合代数理论。关系通 常用二维表来表示,现用集合代数给出关系的 定义
2.2 关系数据结构 因为关系模型是建立在集合代数的基础上 的,所以本节从集合论角度给出关系数据结构 的形式化定义。 2.2.1 数学定义 关系的理论基础是集合代数理论。关系通 常用二维表来表示,现用集合代数给出关系的 定义
221数学定义 【定义2-1】域( Domain)是值的集合 例如,整数、实数、{ABC}、长度小于15个字节的字 符的集合、大于0且小于100的正整数等等都可以是域。 在关系数据库中,域可以命名。例如: 姓名={张力,李红,王芳,刘吉} 职称={高工,工程师,助工,技术员} X={男,女} 其中,姓名、职称、X称为域名,姓名域和职称域各有4个值, X域有2个值,一般称它们的基数分别为4、4、2
2.2.1 数学定义 【定义2-1】域(Domain)是值的集合。 例如,整数、实数、{A,B,C}、长度小于15个字节的字 符的集合、大于0且小于100的正整数等等都可以是域。 在关系数据库中,域可以命名。例如: 姓名={张力,李红,王芳,刘吉} 职称={高工,工程师,助工,技术员} X={男,女} 其中,姓名、职称、X称为域名,姓名域和职称域各有4个值, X域有2个值,一般称它们的基数分别为4、4、2
221数学定义 【定义2-2】给定一组域D1D2y…Dn,则D1×D2×…XDn dn)|d1∈D1,i=12…n}称为D1D2y…Dn的 笛卡尔积。其中每个(d1d2y…,d)叫做一个n元组,元组中的 每个d是D域中的一个值,称为一个分量 若D;(i=1,2…,n)为有限集,其基数( Cardina| Number) 为m;(i=12…,n),则D1XD2×…×Dn的基数为: m=l 其中,m=笛卡尔积的基数; m=第个域的基数; n=域的个数
2.2.1 数学定义 【定义2-2】给定一组域D1 ,D2 ,…,Dn,则D1×D2×…×Dn = {(d1 ,d2 ,…,dn )|d1∈Di,i=1,2,…,n}称为D1 ,D2 ,…,Dn的 笛卡尔积。其中每个(d1 ,d2 ,…,dn )叫做一个n元组,元组中的 每个di是Di域中的一个值,称为一个分量。 若Di (i=1,2,…,n)为有限集,其基数(Cardinal Number) 为m i (i=1,2,…,n),则D1×D2×…×Dn的基数为: m=∏ mi 其中,m=笛卡尔积的基数; mi=第i个域的基数; n=域的个数