数据库基础第二章关系数据模型与关系运算解读PPT课件

  • 格式:ppt
  • 大小:1.19 MB
  • 文档页数:20

下载文档原格式

  / 20
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库基础
第二章 关系数据模型与关系运算
2.1 关系数据模型
❖ 关系数据结构描述
关系的笛卡尔积乘积定义
❖Domain(域)/datatype(数据类型) ❖Cartesian Product (笛卡尔积)
定义 :设有一组域D1,D2,…,Dn,这些域可以部分或者全部相同 域D1,D2,…,Dn的笛卡尔乘积(Cartesian Products)定义为如 下集合: D1×D2×…×Dn = {(d1,d2,…,dn)| diDi,i=1,2,…,n}
或者为空值(X包含的所有属性都为空值) 或者等于S中某个元组的主键值
(3)用户定义完整性约束
❖例如:订货数不得小于0;订货数不得小于存货量
例1 下面各种情况说明了参照完整性规则在关系中如何实现的。 ① 在关系数据库中有下列两个关系模式:
S(S#,SNAME,AGE,SEX) SC(S#,C#,GRADE) 这里带下划线者为主键,SC关系中的S属性为外键。据规则 要求关系SC中的S# 值应该在关系S中出现。如果关系SC中有一 个元组(S7,C4,80),而学号S7却在关系S中找不到,那么我 们就认为在关系SC中引用了一个不存在的学生实体,这就违反 了参照完整性规则。 另外,在关系SC中S# 不仅是外键,也是主键的一部分,因 此这里S# 值不允许空。
并运算;差运算;投影运算;选择运算;广义笛卡尔 乘积
数据更新基本运算(对应于传统集合运算)
❖更新操作:插入;删除;修改 ❖(两张表相兼容)Two tables are said to be compatible iff
they have the same schema. ❖Example:
2.2 关系代数
例子2:if relation t have 4 attributes, A1 , A2 , A3 , and A4, 则 T Domain(A1 ) x Domain(A2 ) x Domain(A3 ) x Domain(A4 )
关系的二维表格描述
❖关系是满足特定规范性要求的二维表格 ❖关系的规范化限定 ❖关系的其他一些概念:数据库、关系(表)、属性、元组、
其中每一个元素(d1,d2,…,dn)称为一个元组(Tuple),通常 用t表示;元组中每一个值称为一个分量(Component)。
例子:总分登记表中的四个域
2.1 关系数据模型
❖a relation is a subset of a Cartesian product
例子1:总分登记表 Domain(学号) Domain(姓名) Domain(性 别) Domain(总分)
R S { t|t R t S }
式中“-”为差运算符,t为元组变量,结果R-S为一个新的与R、S兼
容的关系,该关系是由属于R而且不属于S的元组构成的集合,即 在R中减去与S中相同的那些元组。
关系 R
A
B
C
a1
b1
c1
a1
b2
c2
a2
b2
c1
关系 R∪S
A
B
C
a1
b1
c1
a1
b2
c2
a2
b2
c1
(4)元组中的属性在理论上也是无序的,但使用时按 习惯考虑列的顺序。
2.1 关系数据模型
❖ 完整性约束
(1)实体完整性约束
❖实体完整性约束(Entity Integrity)要求组成主键的属性 不能为空值,
(2)参照完整性约束
❖参照完整性规则:如果X是关系R的外键,它与关系S的主键 KS相对应,则对于R中每个元组在X上的值必须为:
❖1.插入-集合的并运算
设有兼容关系R、S(即R、S具有相同的关系模式),则二者的并运
算定义为:
R S { t|t R t S }
式中“∪”为并运算符,t为元组变量,结果R∪S为一个新的与R、S
兼容的关系,该关系是由属于R或属于S的元组构成的集合。
❖2.删除-集合的差运算
设有兼容关系R、S,则二者的差运算定义为:
关系模式和关系实例
❖关系模式
关系模式(Relation Schema)。它是一个5元组: R (U, D, dom, F)
❖关系实例
❖ 关系的性质
在关系模型中,对关系作了下列规范性限制:
(1)关系中每一个属性值都是不可分解的;
(2)关系中不允许出现重复元组(即不允许出现相同 的元组);
(3)由于关系是一个集合,因此不考虑元组间的顺序, 即没有行序;
例2 设工厂数据库中有两个关系模式: DEPT(D#,DNAME) EMP(E#,ENAME,SALARY,D# )
车间模式DEPT的属性为车间编号、车间名,职工模式 EMP的属性为工号、姓名、工资、所在车间的编号。每 个模式的主键与外键已标出。在EMP中,由于D# 不在 主键中,因此D# 值允许空。
基数、度数
2.1 关系数据模型
❖键
超键、候选键、主键、外键 ❖ 设X是关系R的一个或一组属性,但不是关系R的键。如果X与 关系S的主键KS相对应,则称X是关系R的外键(Foreign key)。 关系R为参照关系(Referencing Relation)。关系S为被参照关 系(Referenced Relation)或目标关系(Target Relation)。
2.2 关系代数
数据查询基本运算
❖1.关系属性的指定——投影运算 这个操作是对一个关系进行垂直分割,消去某些列,并 重新安排列的顺序。
i 1 , i 2 , , i( R n ) { t|t t i 1 , t i 2 , , t i n t 1 , t 2 , , t k R }
2.1 关系数据模型
❖ 关系数据操作
数据查询
数据更新
关系代数
❖ 关系数据操作过程分类
❖ 关系数据语言
关系数据语言
关系运算
关系演算
元组演算
域演算
关系代数语言 ISBL
关系演算语言
具关系代数与关系演 算双重特点的语言 SQL
元组演算语言 ALPHA
域演算语言QBE
2.2 关系代数
❖ 五种基本关系代数运算
a2
b2
c2
关系 S
A
B
C
a1
b2
c2
a2
Fra Baidu bibliotekb2
c1
a2
b2
c2
关系 R-S
AB
C
a1 b1
c1
图 2-4 关系的并运算与差运算
2.2 关系代数
❖3.修改-并运算与差运算的组合 设需要修改的元组构成关系R1,则先做删除,得R-R1。 设需修改后的元组构成关系R2,此时将其插入,得到结果
(R-R1)∪R2。