




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机软件技术专业数据库设计娄底职业技术学院电子信息工程系授课教师:邓伟华第二讲概念设计教学重点。数据库概念设计第二讲概念设计掌握数据库的范式理论。掌握数据库的设计的三个模式理论。掌握利用ER图进行数据库概念设计教学目的教学难点数据库的范式理论0回顾前讲的内容1、数据库的基本知识和数据库设计技术;2、数据库设计的重要性;3、数据库设计的步骤;4、数据库设计的需求分析;回顾一:数据建模的概念将现实世界的数据转换成信息世界的数据的过程称为建模回顾二:数据库设计的必要性好的数据库结构有利于:节省数据的存储空间能够保证数据的完整性方便进行数据库应用系统的开发设计不好的数据库结构将导致数据冗余、存储空间浪费各种数据操作异常内存空间浪费需求收集和分析设计概念结构设计逻辑结构数据模型优化设计物理结构评价设计,性能预测物理实现试验性运行使用、维护数据库应用需求数据、处理转换规则、DBMS功能优化方法应用要求,DBMS详细特征需求分析阶段数据库运行、维护阶段不满意不满意
数据库实施阶段物理设计阶段逻辑设计阶段概念设计阶段回顾三:数据库设计的步骤数据库的设计步骤需求收集和分析设计概念结构设计逻辑结构设计物理结构物理实现数据库的设计步骤需求收集和分析用户关心什么用户要什么结果设计概念结构设计逻辑结构设计物理结构物理实现数据库的设计步骤需求收集和分析设计概念结构存什么关系(联系)如何E/R图,是各种数据模型的共同基础设计逻辑结构设计物理结构物理实现数据库的设计步骤需求收集和分析设计概念结构设计逻辑结构用什么数据模型数据库的模式(databaseschema)用户子模式设计物理结构物理实现数据库的设计步骤需求收集和分析设计概念结构设计逻辑结构设计物理结构数据怎么存根据DBMS产品、环境特点物理实现数据库的设计步骤需求收集和分析设计概念结构设计逻辑结构设计物理结构物理实现运行DDL装入测试数据应用程序8.2.2需求分析的方法
一.调查用户需求的具体步骤1.调查组织机构情况;2.调查各部门的业务活动情况;3.协助用户明确对新系统的各种要求;4.确定新系统的边界.
二.常用的调查方法1.跟班作业;2.开调查会;3.请专人介绍;4.询问;5.设计调查表请用户填写;6.查阅记录.8.2需求分析8.2.1需求分析的任务.需求分析调查组织机构总体情况熟悉业务活动明确用户需求确定系统边界用户数据库设计人员….DDDDDFD概念设计
需求分析过程
8.3概念结构设计
8.3.1概念结构的主要特点:1.能真实、充分地反映现实世界;2.易于理解;3.易于更改;4.易于向关系模式转变。8.3.2:实体关系模型实体关系模型:DB设计过程,并且表示DB的整个逻辑结构实体:实体可以是具体的(例如一个人或一本书),也可以是抽象的(如一个节日或一个概念)属性:实体是由一组属性来表示的。例如:Person(个人)实体的属性有Name(名称)、SSN、Age(年龄)、Street(街道)、City(城市)关系:关系是两个或多个实体之间的联系
数据抽象
2.聚类(Aggregation)学生张英王平刘勇……赵亮“ismemberof”
3.概括(Generalization)
学生学号姓名专业班级“ispartof”实体型属性
学生本科生研究生“issubsetof”
三种抽象
1.分类(Classification)关系的类型XXXXYYYY一对一XXXXYYYY一对多XXXXY
YY多对一XXXXYYYY多对多E-R图的符号符号含义实体类型属性关系E-R图姓名Person性别身份证结合11时间E-R图客户客户号名称汽车汽车号名称订购日期1mE-R图学生学号姓名课程课程号名称学分选课时间nm8.3.3:采用ER的概念模型设计步骤1、局部设计需求分析结果确定局部结构范围定义实体属性分配定义联系进入全局ER模式设计还有局部结构等待分析吗是8.3.3:采用ER的概念模型设计步骤2、全局设计局部ER模式确定公共实体合并两个局部ER模式检查并消除冲突进入全局ER模式优化是还有冲突?还有局部模式?是3视图的集成
视图集成的两种方式:*多个分E-R图一次集成.(a)*逐步集成,用累加的方式一次集成两个分E-R图.(b)(E-R)1(E-R)2(E-R)n……基本E-R初步E-R(E-R)3(E-R)12(E-R)2(E-R)1初步E-R基本E-R…(a)(b)
视图集成的两种方式
合并分E-R图,生成初步E-R图
1、属性冲突
(1)属性域冲突(2)属性取值单位冲突
2、命名冲突
(1)同名异义(2)异名同义
3、结构冲突
(1)同一对象在不同应用中具有不同定抽象(2)同一实体在不同分E-R图中所包含的属性个数和属性排列次序不完全相同.合理消除各分E-R图的冲突是合并分E-R图的主要工作与关键所在。各分E-R图之间主要有三类冲突。8.3.3:采用ER的概念模型设计步骤3、全局ER模式优化加工加工消耗存储零件数Q1耗用量Q2存放量Q5库存量Q4用电量Q3产品材料仓库零件
消除不必要的冗余,设计基本E-R图
(一).采用分析方法消除冗余
(二).用规范化理论消除冗余
1.确定分E-R图实体之间的数据依赖.2.求FL的最小覆盖GL,差集为:D=FL-GL8.3.4:范式理论范式理论:第一范式:1NF第二范式:2NF第三范式:3NF带有问题的表格工程号工程名称职工号姓名职务小时工资率工时A1花园大厦1001齐光明工程师6513A1花园大厦1002李思岐技术员6016A1花园大厦1004葛宇洪律师6019A2立交桥1001齐光明工程师6515A2立交桥1003鞠明亮工人5517A3临江饭店1002李思岐技术员6018A3临江饭店1004葛宇洪技术员6014问题分析1.表中包含大量的冗余,可能会导致数据异常:
a.更新异常例如,修改职工号=1001的职务,则必须修改所有职工号=1001的行。
b.添加异常若要增加一个新的职工时,首先必须给这名职工分配一个工程。或者为了添加一名新职工的数据,先给这名职工分配一个虚拟的工程。(因为主关键字不能为空)
c.删除异常例如,1001号职工要辞职,则必须删除所有职工号=1001的数据行。这样的删除操作,很可能丢失了其它有用的数据。什么是规范化研究设计一个“好”的(没有“毛病”的)关系模式的办法。 第一范式 第二范式 第三范式第一范式第一范式的定义:
指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。 在第一范式(1NF)中表的每一行只包含一个实例的信息第一范式要求:属性是原子性的
客户号姓名联系方法宅电手机邮址不可以出现如上的关系–
联系方法非原子性第二范式第二范式的定义:如果一个表属于1NF,且不包含部分依赖性,既没有任何属性只依赖于关键字的一部分,则这个表属于第二范式(常记成2NF
)。 第二范式(2NF)要求数据库表中的每个实例或行必须可以被惟一地区分.
将1NF转换成2NF的方法是分解。第二范式在符合第一范式的基础上,再要求:关系中不存在这样的函数依赖:x->A x是部分主键,A是某一属性送货单号产品码数量客户号客户宅电客户地址客户邮编经办人=>
送货单号客户号客户宅电客户地址客户邮编经办人送货单号产品码数量第三范式第三范式的定义:如果一个表属于2NF,且不包含传递依赖性,则这个表是第三范式(常记成3NF)。满足3NF的表中不包含传递依赖,即没有一个非关键属性依赖于另一个非关键属性,或者说没有一个非关键属性决定另一个非关键属性。 第三范式就是属性不依赖于其它非主属性。第三范式第三范式:在符合第一、第二范式的基础上,再要求不存在传递依赖
客户号->决定了客户地址,客户地址决定了客户地址邮编。是传递依赖。客户号客户宅电客户地址客户邮编送货单号客户号客户宅电客户地址客户邮编经办人送货单号客户号经办人客户号客户宅电客户地址客户邮编=>
案例分析Select学号姓名年龄所在学院学院地点学院电话把学生关系表分为如下两个表:学生:(学号,姓名,年龄,所在学院);学院:(学院,地点,电话)。规范化实例1-2假设某建筑公司要设计一个数据库。公司的业务规则概括说明如下:公司承担多个工程项目,每一项工程有:工程号、工程名称、施工人员等;公司有多名职工,每一名职工有:职工号、姓名、性别、职务(工程师、技术员)等;公司按照工时和小时工资率支付工资,小时工资率由职工的职务决定(例如,技术员的小时工资率与工程师不同)。公司定期制定一个工资报表,如图-1所示。规范化实例2-2工程号工程名称职工号姓名职务小时工资率工时实发工资A1花园大厦1001齐光明工程师6513845.001002李思岐技术员6016960.001004葛宇宏律师60191140.00小计2945.00A2立交桥1001齐光明工程师6515975.001003鞠明亮工人5517935.00小计1910.00A3临江饭店1002李思岐技术员60181080.001004葛宇洪技术员6014840.00小计1920.00
某公司的工资表再看这三个表的函数依赖图工程号工程名称职工号姓名职务小时工资率工程号职工号工时图三个表的函数依赖图画出四个表的函数依赖图
从函数依赖图可见,已经消除职工表中的传递依赖,这四个表都属于第三范式。在绝大多数情况下,一个数据库的所有表都满足3NF,就基本达到数据库设计的目标。工程号工程名称职工号姓名职务职务小时工资率工程号职工号工时案例分析SelectCourse学号姓名年龄课程名称成绩学分把选课关系表SelectCourse改为如下三个表:学生:Student(学号,姓名,年龄);课程:Course(课程名称,学分);选课关系:SelectCourse(学号,课程名称,成绩)。案例分析及实现一X员工在X日期收到X订单中的X货品X件到仓库中.X员工在X日期在仓库中提取X货品X件案例分析及实现一员工: 员工号 姓名货品: 货品编号 货品描述库仓: 库仓号 库仓描述收货:
员工 日期 订单号出货:
员工 日期 出货号收货明细: 订单号 货品 数量出货明细 出货号 货品 日期 数量正规化选择将表格分得过细有时并不好,因为这样需要将各表进行各种的关联,这会令查询时变得复杂,而且效率也可能降低,这些正规化的规定可以参考,在实际应用时,要根据项目的大小,必要时可以进行一些测试,以设计出更合理的表格结构。
8.4逻辑设计概念结构基本E-R图一般数据模型关系、网状、层次特定的DBMS支持下的数据模型优化的数据模型转换规则DBMS的特点和限制优化方法ER模型向逻辑模型转换每个实体转换成一个关系模式一个1:1的联系可以转换为一个关系模式,或与任意一端的关系模式合并若独立转换为一个关系模式,两端的关系码及联系的属性为该关系的属性;若与一端合并,那么将另一端的码及联系的属性合并到该端.一个1:n的关系可以转换成一个关系模式,或与n端的关系模式合并.若独立转换为一个关系模式,两端的关系码及联系的属性为该关系的属性,n端的码为该关系的码.一个m:n的联系可以转换为一个关系模式,那么两端的关系码及联系的属性为该关系的属性,关系的码为两端实体码的组合.
E-R图向关系模型的转换方法一、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辅警岗位知识培训课件
- 交通银行2025连云港市秋招无领导模拟题角色攻略
- 中国银行2025亳州市笔试英文行测高频题含答案
- 建设银行2025金昌市秋招笔试EPI能力测试题专练及答案
- 2025年3D打印的增材制造
- 农业银行2025锡林郭勒盟秋招笔试EPI能力测试题专练及答案
- 2025基因编辑技术的疾病预防研究
- 2025行业细分市场分析报告
- 建设银行2025数据分析师笔试题及答案四川地区
- 交通银行2025亳州市金融科技岗笔试题及答案
- 团建活动申请书
- 2025年度加油站油品储存安全协议范本
- GB/T 29912-2024城市物流配送汽车选型技术要求
- 纺织品产品召回流程指南
- 化验取样工安全操作规程(2篇)
- 2018岭南版美术六年级上册全册教案
- 《基本医疗保险门诊特殊慢性病药品目录(2023 年)》
- 安全保障服务方案及承诺
- 结核病营养支持
- 业务知识演讲稿:“三重一大”事项集体决策制度规范运用的思考
- 起搏器植入围手术期护理
评论
0/150
提交评论