- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 关系数据模型 教学内容 掌握关系数据模型的基本概念 理解关系数据库实现联系的方法 理解关系完整性规则的含义 熟悉使用关系代数表示查询的方法 教学重点 关系代数 教学难点 关系数据库实现联系的方法 关系 定义 关系(Relation)是一个属性数目相同的元组集合 关系 关系模式 由关系名和关系的属性集合组成,用于描述关系的框架结构 如:学生(学号,姓名,性别,班级名称) 关系的性质 P21 码 码(Key)由一个或多个属性组成 分类 超码:能够唯一标识一个元组的属性或属性组 候选码:最小的超码,其任意真子集均不能成为超码 主码:用户选为元组标识的候选码 关系数据库的联系 外码 如果一个关系的属性或属性组是另一个关系的主码,则该属性或属性组称为该关系的外码 外码是关系数据库实现数据之间联系的方法 关系完整性规则 实体完整性 主码非空 参照完整性 不含无效外码,外码可以为空 用户定义完整性 如:规定将成绩限制在0~100之间 数据字典与系统目录 数据字典中包括数据库中表的结构信息、索引、用户、完整性约束、安全性约束等信息,以保证数据库系统正确运行 系统目录是为系统建立的数据库,也是以表的形式来存储 P26图2.8 关系代数 关系代数是以关系为运算对象的一组高级运算的集合 分类:一元运算、二元运算 选择 一元运算,从关系中选择满足条件的元组构成一个新的关系 形式定义:σF(R)={t|t∈R∧F(t)=true} σ为选择运算符,F为选择条件,R为关系 t为元组,∧为逻辑与运算 投影 一元运算,从关系中选择某些属性列构成一个新关系 形式定义:∏A(R)={t[A]|t∈R} A为关系R中的属性列集 并 二元运算,将两个相容关系的所有元组构成一个新关系 所谓相容是指两个关系的属性数目相同,且相应属性的性质(属性域)相同 形式定义:R∪S={t|t∈R∨t∈S} ∨为逻辑或运算 差 二元运算,将两个相容关系R和S中属于R但不属于S的元组构成一个新关系 形式定义:R-S={t|t∈R∧t?S} 笛卡尔积 二元运算,设关系R和S的属性数分为m和n,则R和S的笛卡尔积是一个具有m+n个属性的新关系,其中每个元组的前m个属性来自R的一个元组,后n个属性来自S的一个元组 形式定义 R×S={t|t=tm,tn∧tm∈R∧tn∈S} 笛卡尔积 例2.6:有学生和必修课关系,规定每一名学生必须学习所有必修课程,试通过关系代数计算出该学习关系 学生(学号,姓名) 必修课(课号,课程名,学分) 学习(学号,姓名,课号,课程名,学分) 学习=学生×必修课 笛卡尔积 交 二元运算,将同属于两个相容关系的元组构成一个新关系 形式定义: R∩S={t|t∈R∧t∈S} 连接 二元运算,是将两个关系的笛卡尔积中满足连接条件的元组构成一个新关系 连接 等值连接 θ为=的连接运算 自然连接 连接 例2.8:使用自然连接列出学生和所在系的信息 外连接 特点:在连接运算结果中保留非匹配的元组,非匹配部分填上NULL 分类 左外连接 右外连接 全外连接 左外连接 例2.9:查询学生学习状况,包括没有选课的学生 右外连接 例2.10:查询所开课程的选修状况,包括没有任何人选修的课程 全外连接 例2.11:查询研究生和教师的情况,包括没有指派导师的研究生和没有指导研究生的教师 除 给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组,R中的Y与S中的Y可以有不相同的属性名,但必须出自相同的属性域。 R÷S得到一个新的关系P(X),P是R中满足下列条件的元组在X属性组上的投影 元组在X上分量值x的像集Yx包含S在Y上投影的集合 R÷S={t[X]|t∈R∧πY(S)?Yx} Yx={t[Y]|t∈R∧t[X]=x} 除 例:设有一个学生选课关系R,找出同时选修C101和C104两门课程的学号 关系运算的组合 例2.12:查询所有女同学的信息 σ性别=‘女’(学生) 例2.13:查询所有学生的姓名和专业 Π姓名,专业(学生) 例2.14:在关系R中插入一个元组 学生∪{‘992311’,‘王光明’,‘男’,‘会计学’} 例2.15:列出所有女同学的姓名和专业 Π姓名,专业(σ性别=‘女’(学生)) 例2.16:列出所有女同学的姓名和系名称 用关系代数表示查询 例2.17:查询管理专业的学生 例2.18:查询管理专业学生的学号和姓名 例2.19:列出选修课程号=‘1002’的学生名单(学号和姓名) DataBase 魏英 ?tutor_wei@ 7952616 ? ? ? 学号 姓名 性别 班级名称 4001 张三 女 04计算机 4002 李四 男 04通信 4010 王五 男 04电子 4011 赵六 女 04教育 4015 丁一 女 04教育 关系 元
文档评论(0)