第3章关系模型(1) 本章主要讲述: 关系模型的数据结构 关系的定义和性质 关系数据库的基本概念 关系运算 U
1 第3章 关系模型(1) ➢ 本章主要讲述: ➢ 关系模型的数据结构 ➢ 关系的定义和性质 ➢ 关系数据库的基本概念 ➢ 关系运算
3.1关系数据库的结构 3.1.1关系模型 关系模型就是用二维表格结构来表示实体及实体之间 联系的模型。即关系模型是一些表格的格式,其中包 括关系名、属性名、关键字等。 例如,教学数据库中教师与课程的关系模型如图3.1所 教师关系T TNO TN SEX AGE PROF SAL COMM DEPT 教师号 姓名 性别年龄 职称 工资岗位津贴 系别 U
2 3.1 关系数据库的结构 3.1.1 关系模型 ➢ 关系模型就是用二维表格结构来表示实体及实体之间 联系的模型。即关系模型是一些表格的格式,其中包 括关系名、属性名、关键字等。 ➢ 例如,教学数据库中教师与课程的关系模型如图3.1所 示。 教师关系T TNO 教师号 TN 姓名 SEX 性别 AGE 年龄 PROF 职称 SAL 工资 COMM 岗位津贴 DEPT 系别
课程关系C 授课关系SC CNO CT TNO CNO 课程号 课程名 课时 教师号 课程号 图3.1教师—课程数据库的关系模型 从各个关系的框架中,我们可以很容易看出哪两个关 系之间有联系。例如: 教师关系和授课关系有公共的属性“教师号”,则表明这两 个关系有联系。 ≯而课程关系和授课关系有公共的属性“课程号”,则表明这 两个关系也有联系。 U
3 课程关系C 授课关系SC 图3.1 教师—课程数据库的关系模型 ➢ 从各个关系的框架中,我们可以很容易看出哪两个关 系之间有联系。例如: ➢ 教师关系和授课关系有公共的属性“教师号” ,则表明这两 个关系有联系。 ➢ 而课程关系和授课关系有公共的属性“课程号” ,则表明这 两个关系也有联系。 CNO 课程号 CN 课程名 CT 课时 TNO 教师号 CNO 课程号
3.1.2关系的定义 1、域( Domain) >域是一组具有相同数据类型的值的集合,又称为值域 (用D表示)。关系中用域表示属性的取值范围。例如 整数、实数、字符串的集合 域中所包含的值的个数称为域的基数(用m表示)。 例如: D1={李力,王平,刘伟}m1=3 D2={男,女} 2 D3={4728,30} m2= >其中,D1,D2,D3为域名,分别表示教师关系中姓名、性别 年龄的集合
4 3.1.2 关系的定义 1、 域(Domain) ➢ 域是一组具有相同数据类型的值的集合,又称为值域 (用D表示) 。关系中用域表示属性的取值范围。例如 整数、实数、字符串的集合。 域中所包含的值的个数称为域的基数(用m表示)。 例如: D1={李力,王平,刘伟} m1=3 D2={男,女} m2=2 D3={47,28,30} m3=3 ➢ 其中,D1,D2,D3为域名,分别表示教师关系中姓名、性别、 年龄的集合
2、笛卡尔积( Cartesian Product) 给定一组域D1,D2,…,Dn(它们可以包含相同的元素, 即可以完全不同,也可以部分或全部相同)。D1 D2,…,Dn的笛卡尔积为D1×D2×……Dn={(d1 d2,…,dn)d;∈D,i=1,2,…,n}。 由定义可以看出,笛卡尔积也是一个集合。 其中 ①元素中的每一个d1叫做一个分量( Component),来自相应的域 (d∈D) ②每一个元素(d1,d2,d3,…,dn)叫做一个n元组( n-tuple), 简称元组( Tuple)。但元组不是d的集合,元组的每个分量(d1) 是按序排列的。如: (1,2,3)≠(2,3,1)≠(1,3,2)
5 2、 笛卡尔积(Cartesian Product) ➢ 给定一组域D1,D2,…,Dn(它们可以包含相同的元素, 即可以完全不同,也可以部分或全部相同)。D1, D2,…,Dn的笛卡尔积为D1×D2×……×Dn={(d1, d2,…,dn)|di∈Di,i=1,2,…,n}。 由定义可以看出,笛卡尔积也是一个集合。 其中: ① 元素中的每一个di叫做一个分量(Component),来自相应的域 (di∈Di) ② 每一个元素(d1,d2,d3,…,dn)叫做一个n元组(n-tuple), 简称元组(Tuple)。但元组不是di的集合,元组的每个分量(di) 是按序排列的。如: (1,2,3)≠(2,3,1)≠(1,3,2)