数据库逻辑设计.ppt_第1页
数据库逻辑设计.ppt_第2页
数据库逻辑设计.ppt_第3页
数据库逻辑设计.ppt_第4页
数据库逻辑设计.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,数据库逻辑设计,课前预习 将手机调到静音 认真做笔记 及时完成作业,上课要求,理解数据库逻辑设计的基本概念 了解关系数据模型的表示方法 了解关系数据库的三种关系运算 掌握将E-R图向关系数据模型的转化方法,学习目标,学习内容,逻辑设计 关系数据模型 关系运算 E-R模型转化关系数据模型 关系数据模型的优化 学生选课表结构,E-R模型与计算机具体实现无关,这也决定了没有一个DBMS可以直接支持E-R模型的实现。 数据库逻辑设计:将E-R模型转换成计算机能够实现的数据模型的过程。,逻辑设计,关系数据模型把概念模型中实体以及实体之间的各种联系均用关系来表示。 从用户的观点来看,关系模型中数据的逻辑结构是一张二维表,它由行和列构成。 关系数据模型涉及的几个基本概念: 1、关系 2、元组 3、属性 4、域 5、键(候选键、主键、外键)6、关系模式,关系数据模型,二维表,(1)关系 每一个关系用一张二维表来表示,常称为表。每一个关系表都有一个区别于其他关系表的名称,称为关系名。 关系是概念模型中同一类实体以及实体之间联系集合的数据模型表示。,(2)元组(或记录) 二维表中除表头外的非空行称为一个元组或记录。5行数据即为5个元组。,(3)属性 二维表中的每一列即为一个属性,每个属性都有一个显示在每一列首行的属性名。 在一个关系表中不能有两个同名属性。,(4)域 域是属性的取值范围,即不同元组对同一属性的取值所限定的范围。 “性别”的域为集合男,女, “年龄”的变化范围是0-120岁。,(5)键 键在关系模型中用来标识属性。主要包括下列类型:候选键、主键和外键。 候选键:属性或属性组合,其值能够惟一标识一个元组的候选关键字。 主键:在一个关系中可能有多个候选关键字,从中选择一个作为主关键字。 在学生选课系统中,将“学号”作为主键,因为如果“姓名”作为主键则同名学生将无法区分。,外键:如果一个表中的字段不是本表关键字,而是另外一个表的关键字,则这个字段被称为外键。,(6)关系模式 关系模式是概念模型中实体型以及实体型之间联系的数据模型表示。 一般表示为: 关系名(属性名1,属性名2,属性名n) 学生信息表(学号,姓名,年龄,性别),关系数据库系统至少应当支持三种关系运算,即选择()、投影()和连接()。 (1)选择 选择是单目运算符,即对一个表进行的操作,从中选出符合给定条件的元组组成一个新表,其中的条件由逻辑表达式给出。它是从行的角度对关系进行运算,是关系的横向抽取。,关系运算,选择性别为“女”且平均成绩在60分以上的元组,形成的新表如下:,学生信息表,(2)投影 投影也是单目运算符,从二维表中选出若干属性组成新的表,它是从列的角度对关系进行运算,是关系的垂直分解。 对学生信息表中的“学号”、“姓名”和“平均成绩”进行投影的结果如下:,(3)连接 表的选择和投影运算分别从行和列两个方向对一张表进行操作,而表的连接运算是对两张表的操作,得出新表。,两表两节后的新表如下:,E-R模型转化关系数据模型,E-R 模型可以向现有的各种数据库模型转换,不同的数据库模型有不同的转换规则。 主要有以下几种转换规则: (1)一个实体 (2) 1:1联系 (3)1:n 联系 (4) m:n 联系 (5)三个和三个以上实体间的多元联系,(1)一个实体类型转换成一个关系模式, 实体的属性就是关系的属性, 实体的码就是关系的码。 若有“学生”和“课程”两个实体,根据一个实体转换成一个关系模式的规则,可以确定两个关系模型,如下所示: 学生(学号,姓名,性别,出生日期,专业,联系方式) 课程(课程号,课程名称,学分),(2)一个1:1联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并。,如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。1)“管理”联系转换成一个独立的关系模式 班长(学号,姓名,性别,出生日期) 班级(班级编号,系别,专业,班级名称) 管理(学号,班级编号),如果与联系的任意一端实体所对应的关系模式合并,则需要在该关系模式的属性中加入另一个实体的码和联系本身的属性。 2)“管理”联系与“班长”实体合并 班长(学号,姓名,性别,出生日期,班级编号) 班级(班级编号,系别,专业,班级名称),(3)一个 1:n 联系可以转换为一个独立的关系模式,也可以与联系的 n 端实体所对应的关系模式合并。,如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而联系的码为 n 端实体的码。 1)“组成”联系转换为一个独立的关系模式 工人(工号,姓名,性别,工龄,工种) 车间(车间编号,车间名称) 组成(工号,车间编号),如果与联系的 n 端实体所对应的关系模式合并,则需要在该关系模式的属性中加入1端实体的码和联系本身的属性。 2)“组成”联系与“工人”实体合并 工人(工号,姓名,性别,工龄,工种,车间编号) 车间(车间编号,车间名称),(4)一个 m:n 联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。,学生(学号,姓名,性别,出生日期,专业,联系方式) 课程(课程号,课程名称,学分) 选修(学号,课程号,成绩),(5)三个或三个以上的实体间的多元联系转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。,教师(职工号,姓名,职称) 课程(课程号,课程名称,学分) 教材(教材编号,教材名称,作者,出版社) 讲授(职工号,课程号,教材编号),关系数据模型的优化,由E-R模型转换得到的关系数据模型还需要进行相关的优化,确定数据间依赖关系,对数据依赖进行极小化处理,消除冗余联系(参考后面的范式规范化),确定范式级别,依据具体环境对某些关系模式进行合并或分解。 所谓规范化是指关系模型中的每一个关系模式都必须满足一定的要求。目前普遍用范式来表示关系模型的规范化程度,一般情况下数据模型至少规范到第三范式。,(1)第一范式(1NF) 第一范式要求关系模式中的每列必须是不可分割的原子项,即第一范式要求列不能够再分为其它几列,严禁“表中表”。,注意:任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。,(2)第二范式(2NF) 第二范式是在第一范式基础上建立起来的,满足第二范式则必须先满足第一范式。 第二范式要求表中所有非主关键属性完全依赖于主关键字。 如果非关键字属性仅依赖主关键字的一部分,则可以将这个属性和其依赖的部分主键分解出来形成一个新的实体。,表中的主关键字:学号、课程编号 存在如下的依赖关系: 学号(姓名,专业) 课程编号(课程名称,学分) (学号,课程编号)成绩 只有“成绩”属性完全依赖于主关键字,其余的都是依赖于其中的一个关键字,因此需要进行第二范式的规范。,(3)第三范式(3NF) 第三范式要求消除非主关键字对主关键字的传递依赖。即满足第三范式的数据库表不应该存在这样的依赖关系:关键字段 非关键字段x 非关键字段y,关系中存在传递依赖: 学号所在学院(学院名称,学院电话),学生选课表结构,学生信息表,课程信息表,选修信息表,任务实现,1、E-R模型到关系数据模型的转换。 新建文档、将实体转换

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论