- 1、本文档共64页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]数据库系统概论第二章v2关系数据库
关系运算的安全性(续I) 当满足下列条件时,一个元组关系演算表达式{t |?(t)}是安全的: 如果?(t)为真,则元组t的每个分量都属于dom(?) 。 对于?中的每个形如(?t)(F(t))的子表达式,如果F(t)为真,则元组t的每个分量都属于dom(?) 。 对于?中的每个形如(?t)(F(t))的子表达式,如果F(t)为假,则元组t的每个分量都属于dom(?) 。 域关系演算表达式也必须满足类似的条件才是安全的。 关系运算的安全性 A B 1 B1 1 B2 2 B3 dom(┑R(t)) = {{1 , 2} , {B1 , B2 , B3}} A B 1 B3 2 B1 2 B2 R { t |┑R(t) } * * * * * * * * 做法:逐个考虑选课关系中的元组r,求r在姓名上的分量x,再求x在选课关系中的象集课程x,若课程x包含了所有的课程,则x是满足条件的一个元组。 * * * * 选择运算 基本定义 在关系R中选择满足给定条件的元组。 ?F(R)={t | t ? R ? F(t) = ‘真’} F是选择的条件,取逻辑值“真”或“假”。 F的形式:由逻辑运算符连接算术表达式而成。 逻辑运算符:?,?,? 算术表达式:X ? Y X,Y是属性名、常量、或简单函数。 ?是比较算符,? ?{ ? , ? , ? , ? , ? , ≠} 选择运算(续I) ?B=b(R) A B C a b c c b d ?B=b ? C=c(R) A B C a b c A B C a b c d a f c b d R 投影运算 定义 从关系R中取若干属性列组成新的关系。 ?A(R) = { t[A] | t?R } , A?R 投影的结果中要去掉重复的行。 c b c f e d c b a C B A B C b c e f R ?B , C(R) 连接运算 定义 从两个关系的广义笛卡儿积中选取给定属性间满足?操作的元组。 R S = { t | t = r, s ? r?R ? s?S ? r[A] ? s[B]} ?为算术比较符,当?为等号时称为等值连接,其他依此类推。 连接运算可以用笛卡尔积和选择运算重写为 R S = ?A?B( R×S) A ? B A ? B 连接运算(续I) 9 8 7 6 5 4 3 2 1 C B A D E 3 1 6 2 A B C D E 1 2 3 3 1 1 2 3 6 2 4 5 6 6 2 R S B D R S 自然连接 定义 从两个关系的广义笛卡儿积中选取在相同属性列上取值相等的元组,并去掉重复的属性列。 R S = {(Z,X,W)| (Z,X)?R?(X,W)?S?r[X]=s[X]} 计算R×S 设R与S的公共属性列为A1,… Ak,从R×S中选取满足R.A1=S.A1,… ,R.Ak=S.Ak的那些元组 去掉S.A1,… ,S.Ak 自然连接(续I) A B C a b c d b c b d f c a d B D E b c d b c e a d b S R A B C D E a b c c d a b c c e d b c c d d b c c e c a d d b R S 复合连接与半连接 复合连接 类似于自然连接,是连接运算结果不包含连接属性的自然连接。 半连接 在R与S的连接运算结果中只保留R的属性列所得到的元组集合。 外连接 例:列出老师的有关信息,包括姓名、工资、所教授的课程。 ∏P# ,PN , SAL , C# , CN((PROF) PC C) 化学 C03 数学 C02 物理 C01 CN C# P04 C02 P02 C02 P01 C01 P# C# 数学 C02 500 李三 P04 数学 C02 700 钱广 P02 物理 C01 800 赵明 P01 CN C# SAL PN P# 问题:有关P03号职工的姓名和工资信息没有显示出来。 P# PN SAL P01 赵明 800 P02 钱广 700 P03 孙立 600 P04 李三 500 外连接(续I) 外连接 为避免自然连接时因失配而发生的信息丢失,可以假定往参与连接的一方表中附加一个取值全为空值的行,它和参与连接的另一方表中的任何一个未匹配上的元组都能匹配,称之为外连接。 外连接 = 自然连接 + 失配的元组。 外连接的形式:左外连接、右外连接、全外连接 。 左外连接 = 自然连接 + 左侧表中失配的元组。 右外连接 = 自然连接 + 右侧表中失配的元组。 全外连接 = 自然连接 + 两侧表中失配的元组。 外连接
文档评论(0)