中国科技大学MBA电子商务.ppt

上传人:自*** 文档编号:126693010 上传时间:2020-03-27 格式:PPT 页数:52 大小:522KB
返回 下载 相关 举报
中国科技大学MBA电子商务.ppt_第1页
第1页 / 共52页
中国科技大学MBA电子商务.ppt_第2页
第2页 / 共52页
中国科技大学MBA电子商务.ppt_第3页
第3页 / 共52页
中国科技大学MBA电子商务.ppt_第4页
第4页 / 共52页
中国科技大学MBA电子商务.ppt_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《中国科技大学MBA电子商务.ppt》由会员分享,可在线阅读,更多相关《中国科技大学MBA电子商务.ppt(52页珍藏版)》请在金锄头文库上搜索。

1、0 第二章关系数据库 2 1关系数据结构2 2关系的完整性2 3关系代数2 4关系数据库管理系统 1 第二章关系数据库 关系数据库系统是目前应用最普遍 最有发展前途的数据库系统 而关系数据库系统的基础即是关系模型 与其它模型相比 关系模型具有坚实的理论基础 关系运算理论 因此本章是这门课程的重点内容 也是后面所有介绍关系数据库概念的基础知识 关系模型是由关系数据结构 关系操作集合和关系的完整性三部分组成 2 2 1关系数据结构 从用户的角度看 关系模型的数据结构是一张二维表 由于关系模式是建立在集合代数的基础上 这里从集合论角度给出关系数据结构的形式化定义 以及有关关系模式 关系 元组 属性

2、候选码 主码 外码等相关概念 1 关系 1 域 domain 定义2 1域是一组具有相同数据类型的值的集合 3 2 1关系数据结构 关系 2 笛卡尔积 Cartesianproduct 定义2 2给定一组域D1 D2 Dn 这些域可以完全不同 也可以部分或全部相同 D1 D2 Dn的笛卡尔积为 其中每一个元素 d1 d2 dn 叫作一个n元组 简称元组 元素中的每一个值di叫作一个分量 若Di i 1 2 n 为有限集 其基数为mi i 1 2 n 则D1 D2 Dn的基数为 4 2 1关系数据结构 关系 例1 D1 陈新 刘成宾 导师集合 D2 计算机 信息 专业集合 D3 李勇 刘英 韩小

3、海 研究生集合 D1 D2 D3 陈新 计算机 李勇 陈新 计算机 刘英 陈新 计算机 韩小海 陈新 信息 李勇 陈新 信息 刘英 陈新 信息 韩小海 刘成宾 计算机 李勇 刘成宾 计算机 刘英 刘成宾 计算机 韩小海 刘成宾 信息 李勇 刘成宾 信息 刘英 刘成宾 信息 韩小海 基数为 2 2 3 12 是元组 5 2 1关系数据结构 笛卡尔积可表示为一个二维表 表中的每行对应一个元组 表中的每列对应一个域 6 2 1关系数据结构 关系 3 关系 relation 定义2 3笛卡尔积的子集叫作在域D1 D2 Dn上的关系 用R D1 D2 Dn 表示 其中R为关系名 n是关系的目或度 关系中

4、的每个元素是关系中的元组 通常用t表示 关系是笛卡尔积的一个有意义的子集 所以关系也是一张二维表 表中的每行对应一个元组 每列对应一个域 因为域可以相同 必须为域取名 称为属性 n目关系必有n个属性 7 2 1关系数据结构 关系 在关系DB中 码是关系模型的一个重要概念 候选码 关系中的某一属性组 若它的值唯一地标识了一个元组 而其真子集不行 则该属性组称为候选码 主码 若关系中有多个候选码 则选定其中一个为关系的主码 主属性与非主属性 包含在任何一个候选码中的属性称为主属性 不包含在任何候选码中的属性称为非主属性 8 2 1关系数据结构 关系 例2 从前面例1的笛卡尔积中选取一个有意义的子集

5、 由于一个研究生只师从于一个导师 学习某一个专业 所以笛卡尔积中许多元组没有实际意义 我们从中选出有实际意义的元组来构造关系 假设导师与专业是1 1的关系 导师与研究生是1 n的关系 则得到下列表 SPA Key 研究生 9 2 1关系数据结构 关系 关系的类型 基本关系 实际存在的表 它是实际存储数据的逻辑表示 查询表 查询结果对应的表 视图表 是由基本表或其他视图表导出地表 是虚表 不对应实际存储的数据 10 2 1关系数据结构 关系 关系的性质 属性值是原子的 不可分解 没有重复元组 没有行序 理论上没有列序 为方便 使用时有列序 列是同质的 11 2 1关系数据结构 2 关系模式关系模

6、式是 型 的概念 是对关系的描述 关系是 值 的概念 是关系模式在某一时刻的状态或内容 关系模式是静态的 相对稳定的 而关系是动态的 随时间的变化而不断变化 因为关系操作在不断更新着数据库中的数据 以使得数据库能真实地反映现实世界的最新状态 12 2 1关系数据结构 关系模式 关系需要描述哪些方面 因为关系是元组的集合 也就是笛卡尔积的一个子集 所以关系模式必须指出这些元组集合的结构 即属性的构成 属性来自的域 属性与域之间的映射关系 其次 关系模式的关系随时间而变化 但客观世界许多既有事实限定了这种变化必须满足一定的完整性约束条件 这些约束条件或者通过对属性取值范围的限定 或者通过属性间的相

7、互关连反映出来 所以关系模式应当刻划这些完整性约束条件 13 2 1关系数据结构 关系模式 关系模式应当是一个五元组 可形式化地表示为 R U D DOM F 属性名集合 关系名 U中属性来自的域 属性间数据的依赖关系集 属性向域的映象集合 简记为 R U 或R A1 A2 An 14 2 1关系数据结构 关系模式 3 关系数据库在一个给定的应用领域中 所有实体及实体之间联系的关系的集合构成一个关系数据库 关系数据库也有型与值之分 关系数据库的型称为关系数据库模式 是对关系数据库的描述 它包括若干域的定义以及在这些域上定义的若干关系模式 关系数据库的值是这些关系模式在某一时刻对应的关系的集合

8、通常就称为关系数据库 15 第二章关系数据库 2 1关系数据结构2 2关系的完整性2 3关系代数2 4关系数据库管理系统 16 2 2关系的完整性 关系模型的完整性规则是对关系的某种约束条件 关系模型中可以有三类完整性约束 实体完整性 参照完整性和用户自定义完整性 其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件 被称作是关系的两个不变性 是由关系系统自动支持的 17 2 2关系的完整性 1 实体完整性 实体完整性规则 若属性A是基本关系R的主属性 则属性A不能取空值 实体完整性规则要求关系中的元组在组成主码的属性上不能取空值 若取空值 则主码的唯一性将遭到破坏 这是对关系主码的约

9、束 所谓空值就是 不知道 或 无意义 的值 例 在学生选课关系 SC 学号 课号 成绩 中 学号 课号 为主码 则学号和课号两个属性都不能取空值 18 2 2关系的完整性 2 参照完整性现实世界中的实体之间往往存在某种联系 在关系模型中实体及实体间的联系都是用关系来描述 这就自然存在着关系与关系间的引用 先看几个例子 19 2 2关系的完整性 参照完整性 例1 设有学生和专业两个关系 其中主码用下划线标识 学生 学号 姓名 性别 专业号 年龄 专业 专业号 专业名 这两个关系之间存在着属性的引用 即学生关系引用了专业关系的主码 专业号 显然 学生关系中专业号的取值 必须是确实存在的专业的专业号

10、 即专业关系中有该专业的记录 也就是说 学生关系中的某个属性的取值需要参照专业关系的属性取值 20 2 2关系的完整性 参照完整性 例2 学生课程 数据库中有三个关系 学生 学号 姓名 性别 专业号 年龄 课程 课程号 课程名 学分 选修 学号 课程号 成绩 这三个关系之间也存在着属性的引用 即选修关系引用了学生关系的主码 学号 和课程关系的主码 课程号 因此 选修关系中某些属性的取值需要参照学生关系和课程关系的属性取值 21 2 2关系的完整性 参照完整性 不仅两个或两个以上的关系之间可以存在引用关系 同一关系内部属性间也可能存在引用关系 例3 设有关系学生2 学号 姓名 性别 专业号 年龄

11、 班长 其中 学号 属性是主码 班长 属性表示该学生所在班级的班长的学号 它引用了本关系 学号 属性 即 班长 必须是确实存在的学生的学号 22 2 2关系的完整性 参照完整性 定义2 4设F是基本关系R的一个或一组属性 但不是关系R的码 如果F与基本关系S的主码Ks相对应 则称F是基本关系R的外码 并称基本关系R为参照关系 基本关系S为被参照关系或目标关系 关系R和S不一定是不同的关系 参照关系 被参照关系 专业号是学生关系的外码 参照关系 被参照关系 被参照关系 23 2 2关系的完整性 参照完整性 让一个关系的主码出现在另一个关系中 以实现关系中数据的联系 这些在另一个关系中起联系作用的

12、属性组 就称为外码 在关系DB中 表之间的联系是通过公共属性实现的 这个公共属性就是一个表的主码和另一个表的外码 这是关系DB的特点 24 2 2关系的完整性 参照完整性 参照完整性规则就是定义外码与主码之间的引用规则 参照完整性规则 若属性F 或属性组 是基本关系R的外码 它与基本关系S的主码Ks相对应 则对于R中每个元组在F上的值必须为 或者取空值 F的每个属性值均为空值 或者等于S中某个元组的主码值 规则要求 外码值必须是另一个关系的主码的有效值 或者是 空值 这是对关系外码的约束 外码值是否允许为空值 应视具体情况而言 25 2 2关系的完整性 参照完整性 对照前例 例1 学生关系中的

13、专业号可取两类值 空值 表示尚未给该学生分配专业非空值 必须是专业关系中某个元组的专业号值 例2 按参照完整性 选修关系中的学号和课号也可取两类值 空值或被参照关系中已存在的值 但由于学号和课号是选修关系中的主属性 按实体完整性不能取空值 所以实际上学号和课号只有一种取值 例3 学生2关系中的班长属性也可取两类值 空值 表示尚未选出班长非空值 必须是本关系中某个元组的学号值 26 2 2关系的完整性 3 用户自定义完整性用户自定义完整性就是针对某一具体关系数据库的约束条件 它反映某一具体应用所涉及的数据必须满足的语义要求 27 第二章关系数据库 2 1关系数据结构2 2关系的完整性2 3关系代

14、数2 4关系数据库管理系统 28 2 3关系代数 关系代数是关系数据库系统查询语言的理论基础 而关系的数据查询语言是关系代数的具体实现 关系模型给出了关系操作的能力 这个能力是用关系数据语言来表示的 关系数据语言包括 关系代数语言 是用对关系的运算来表达查询要求的方式 关系演算语言 是用谓词来表达查询要求的方式 具有关系代数和关系演算双重特征特点的语言SQL 29 2 3关系代数 关系代数运算符 集合运算符 专门的关系运算符 比较运算符 逻辑运算符 30 2 3关系代数 引入记号 R A1 A2 An 是关系模式 R为一个关系 t R表示t是R的一个元组 t Ai 表示元组t中相应于属性Ai的

15、一个分量 若A Ai1 Ai2 Aik 则A称为属性列 t A t Ai1 t Ai2 t Aik 表示元组t在属性列A上诸分量的集合 表示 A1 A2 An 去掉 Ai1 Ai2 Aik 后剩余的部分属性组 31 2 3关系代数 R为n目关系 S为m目关系 tr R ts S trts称为元组的连接 它是一个 n m 列的元组 前n个分量为R中的一个n元组 后m个分量为S中的一个m元组 给定一个关系R X Z X和Z是属性组 定义t X x时 x在R中的象集为 Zx t Z t R t X x 它表示R中属性组X上值为x的诸元组在Z上分量的集合 32 2 3关系代数 1 传统的集合运算 关系

16、的并 R S t t R t S 由属于R或属于S的元组组成 即由关系R和S的所有元组合并 再除去重复元组 组成的一个新关系 关系的差 R S t t R t S 由属于R而不属于S的所有元组组成 即关系R中除去与S关系中相同的元组 组成的一个新关系 关系的交 R S t t R t S 由即属于R又属于S的元组组成 即在两个关系R与S中取相同的元组 组成的一个新关系 33 2 3关系代数 传统的集合运算 广义笛卡尔积 R S trts tr R ts S 两个分别为n目和m目的关系R和S的广义笛卡尔积是一个 n m 列的元组的集合 元组的前n列是关系R的一个元组 后m列是关系S的一个元组 若R有k1个元组 S有k2个元组 则R S有k1 k2个元组 34 2 3关系代数 传统的集合运算 传统的集合运算举例 设有两个关系R和S 计算R S R S R S R S R S R S R S R S 35 2 3关系代数 传统的集合运算 R S R S 36 2 3关系代数 2 专门的关系运算 关系的选择 从关系中找出满足给定条件的所有元组 其中的条件F是以逻辑表达式给出 那些使逻辑表达式的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号