数据库设计ppt课件

上传人:m**** 文档编号:567556360 上传时间:2024-07-21 格式:PPT 页数:40 大小:1.15MB
返回 下载 相关 举报
数据库设计ppt课件_第1页
第1页 / 共40页
数据库设计ppt课件_第2页
第2页 / 共40页
数据库设计ppt课件_第3页
第3页 / 共40页
数据库设计ppt课件_第4页
第4页 / 共40页
数据库设计ppt课件_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《数据库设计ppt课件》由会员分享,可在线阅读,更多相关《数据库设计ppt课件(40页珍藏版)》请在金锄头文库上搜索。

1、第七章第七章数据库设计数据库设计课程内容回想课程内容回想数据数据库有哪些根本操作?有哪些根本操作?建建库建表建表根本的数据支配根本的数据支配语句有哪些?句有哪些?语法是?法是?增增INSERT删DELETE改改UPDATE查SELECT常用的聚合函数有哪些?常用的聚合函数有哪些?表表衔接分接分为哪几种哪几种类型?型?目的目的回想关系型数据库和回想关系型数据库和 SQL Server 的根本原理的根本原理了解与数据库设计有关的概念,如数据库建模了解与数据库设计有关的概念,如数据库建模实体关系模型实体关系模型了解用于设计数据库的了解用于设计数据库的 E-R 图及其实现图及其实现了解数据规范化了解数

2、据规范化数据完好性数据完好性了解数据字典、数据完好性和数据库效力器设计了解数据字典、数据完好性和数据库效力器设计为什么需求设计数据库为什么需求设计数据库 2-1建筑茅屋需求设计吗?建筑大厦需求设计吗?结论:当数据库比较复杂时我们需求设计数据库为什么需求设计数据库为什么需求设计数据库 2-2良好的数据库设计:节省数据的存储空间可以保证数据的完好性方便进展数据库运用系统的开发糟糕的数据库设计:数据冗余、存储空间浪费内存空间浪费数据更新和插入的异常软件工程开发周期软件工程开发周期需求分析需求分析阶阶段:分析客段:分析客户户的的业务业务和数据和数据处处置需求置需求;概要概要设计阶设计阶段:段:设计设计

3、数据数据库库的的E-R模型模型图图,确,确认认需求信息需求信息 的正确和完好的正确和完好;详细设计阶详细设计阶段:将段:将E-R图转换为图转换为多多张张表,表,进进展展逻辑设计逻辑设计, 并运用数据并运用数据库设计库设计的三大范式的三大范式进进展展审审核核;代代码编码编写写阶阶段:段:选择详细选择详细数据数据库进库进展物理展物理实现实现,并,并编编写写 代代码实现码实现前端运用前端运用;软软件件测试阶测试阶段:段:安装部署:安装部署:现实世界建模信息世界数据库世界模型转换 规范化设计数据库的步骤设计数据库的步骤4-1搜集信息:搜集信息: 与该系统有关人员进展交流、坐谈,充分与该系统有关人员进展

4、交流、坐谈,充分了解数据库需求完成的义务了解数据库需求完成的义务BBS论坛的根本功能:用户注册和登录,后台数据库需求存放用户的注册信息和在线形状信息;用户发贴,后台数据库需求存放贴子相关信息,如贴子内容、标题等;论坛版块管理:后台数据库需求存放各个版块信息,如版主、版块称号、贴子数等;设计数据库的步骤设计数据库的步骤4-2标识对象实体标识对象实体Entity 标识数据库要管理的关键对象或实体标识数据库要管理的关键对象或实体 实体普通是名词:用户:论坛普通用户、各版块的版主。用户发的主贴用户发的跟贴回贴版块:论坛的各个版块信息设计数据库的步骤设计数据库的步骤4-3论坛用户:呢称密码电子邮件生日性

5、别用户的等级备注信息注册日期形状积分主贴发贴人发贴表情回复数量标题正文发贴时间点击数形状:最后回复时间回贴贴子编号回贴人,回贴表情标题正文回贴时间点击数版块版块称号版主本版格言点击率发贴数标识每个实体的属性标识每个实体的属性Attribute设计数据库的步骤设计数据库的步骤4-4标识对象之间的关系标识对象之间的关系Relationshipl跟贴和主贴有主从关系:我们需求在跟贴对象中阐明它是谁的跟贴;l版块和用户有关系:从用户对象中可以根据版块对象查出对应的版主用户的情况;l主贴和版块有主从关系:需求阐明发贴是属于哪个版块的;l跟贴和版块有主从关系:需求阐明跟贴是属于哪个版块的;数据建模的概念数

6、据建模的概念 将现实世界的数据转换成信息世界的数据将现实世界的数据转换成信息世界的数据 的过程称为建模的过程称为建模数据建模步骤数据建模步骤商业信息需求商业信息需求可操作的数据库可操作的数据库外方式外方式概念方式概念方式内方式内方式商业视图商业视图系统视图系统视图绘制绘制E-R图图 4-1E-R EntityRelationship 实实体关系体关系图图 符合含义实体,一般是名词实体,一般是名词属性,一般是名词属性,一般是名词关系,一般是动词关系,一般是动词绘制绘制E-R图图 4-2管理管理bbsUser用户,版主出生日期昵称版块称号版主bbsSection版块绘制绘制E-R图图 4-3映射基

7、数映射基数一对一X X X X Y Y Y Y X X X X Y Y Y Y 一对多X X X X Y Y Y 多对一X X X X Y Y Y Y 多对多客客客客户户订单订单产产品品品品 1 N M N绘制绘制E-R图图1111M1MMM M用户积分性别用户等级备注信息注册日期版块称号本版留言发贴数形状密码昵称电子邮件生日论坛用户BBSUser管理发表发表跟随属于属于点击率版主标题发贴人贴子编号正文点击率版块BBSSection发贴BBSTopic发贴人正文形状贴子编号所在版块最后回复时间发贴表情回复数量点击率发贴时间标题M跟贴BBSReply所在版块发贴时间最后回复时间发贴表情1论坛E-

8、R图 如何将如何将E-R图转换为表图转换为表 3-1将各将各实体体转换为对应的表,将各属性的表,将各属性转换为各表各表对应的列的列标识每个表的主每个表的主键列,需求留意的是:没有主列,需求留意的是:没有主键的表添加的表添加ID编号列,它没有号列,它没有实践含践含义,用于做主,用于做主键或外或外键,例如用,例如用户表中的表中的“UID列,版列,版块表中表中添加添加“SID列,列,发贴表和跟表和跟贴表中的表中的“TID列列 在表之在表之间建立主外建立主外键,表达,表达实体之体之间的映射关系的映射关系 如何将如何将E-R图转换为表图转换为表 3-2UID主键TID主键RID主键SID主键如何将如何将

9、E-R图转换为表图转换为表添加各表之间的关系数据规范化数据规范化 仅有好的有好的RDBMS并缺乏以防止数据冗余,必需并缺乏以防止数据冗余,必需在数据在数据库的的设计中中创建好的表构造建好的表构造Dr E.F.codd 最初定最初定义了了规范化的三个范化的三个级别,范,范式是具有最小冗余的表构造。式是具有最小冗余的表构造。这些范式是:些范式是:第一范式第一范式(1st NF First Normal Fromate)第二范式第二范式(2nd NFSecond Normal Fromate)第三范式第三范式(3rd NF Third Normal Fromate)第一范式第一范式 (1st NF)

10、BuyerIDCountryCity1142中国中国日本美国北京北京东京纽约BuyerIDAddress1234中国北京市 美国美国纽约市市英国利物浦日本东京市 第一范式的目的是确保每列的原子性第一范式的目的是确保每列的原子性假设每列都是不可再分的最小数据单元也假设每列都是不可再分的最小数据单元也称为最小的原子单元,那么满足第一范式称为最小的原子单元,那么满足第一范式1NF第二范式第二范式 (2nd NF)假设一个关系满足假设一个关系满足1NF,并且除了主键以外的其他,并且除了主键以外的其他列,都依赖与该主键,那么满足第二范式列,都依赖与该主键,那么满足第二范式2NF 第二范式要求每个表只描画

11、一件事情第二范式要求每个表只描画一件事情Orders字段字段例子例子订单编号产品编号订购日期价 格001A0012000-2-3$29.00 Orders字段字段例子例子订单编号订购日期0012000-2-3Products字段字段例子例子产品编号价 格A001$29.00第三范式第三范式 (3rd NF)假设一个关系满足假设一个关系满足2NF,并且除了主键以外的,并且除了主键以外的其他列都不传送依赖于主键列,那么满足第三其他列都不传送依赖于主键列,那么满足第三范式范式3NF Orders字段字段例子例子订单编号订购日期顾客编号0012000-2-3AB001顾客姓名TonyTony Orde

12、rs字段字段例子例子订单编号订购日期顾客编号0012000-2-3AB001 规范化实例规范化实例 5-1假设某建筑公司要设计一个数据库。公司的业务规假设某建筑公司要设计一个数据库。公司的业务规那么概括阐明如下:那么概括阐明如下:公司承当多个工程工程,每一项工程有:工程号、工程称号、施工人员公司承当多个工程工程,每一项工程有:工程号、工程称号、施工人员等等公司有多名职工,每一名职工有:职工号、姓名、性别、职务工程师、公司有多名职工,每一名职工有:职工号、姓名、性别、职务工程师、技术员等技术员等公司按照工时和小时工资率支付工资,小时工资率由职工的职务决议公司按照工时和小时工资率支付工资,小时工资

13、率由职工的职务决议例如,技术员的小时工资率与工程师不同例如,技术员的小时工资率与工程师不同公司定期制定一个工资报表,如图公司定期制定一个工资报表,如图-1-1所示所示规范化实例规范化实例 5-2工程号工程名称职工号姓名职务小时工资率工时实发工资A1花园大厦花园大厦1001齐光明齐光明工程师工程师6513845.001002李思岐李思岐技术员技术员6016960.001004葛宇宏葛宇宏律师律师60191140.00小计小计2945.00A2立交桥立交桥1001齐光明齐光明工程师工程师6515975.001003鞠明亮鞠明亮工人工人5517935.00小计小计1910.00A3临江饭店临江饭店1

14、002李思岐李思岐技术员技术员60181080.001004葛宇洪葛宇洪技术员技术员6014840.00小计小计1920.00图-1 某公司的工资表规范化实例规范化实例 5-3工程号工程名称职工号姓名职务小时工资率工时A1花园大厦花园大厦1001齐光明齐光明工程师工程师6513A1花园大厦花园大厦1002李思岐李思岐技术员技术员6016A1花园大厦花园大厦1001齐光明齐光明工程师工程师6513A1花园大厦花园大厦1003鞠明亮鞠明亮工人工人5517A3临江饭店临江饭店1002李思岐李思岐技术员技术员6018A3临江饭店临江饭店1004葛宇洪葛宇洪技术员技术员6014图-2 某公司的工程工时表

15、规范化实例规范化实例 5-41.表中包含大量的冗余,能够会导致数据异常:表中包含大量的冗余,能够会导致数据异常:更新异常更新异常 例例如如,修修正正职职工工号号=1001的的职职务务,那那么么必必需需修修正正一一切切职职工工号号=1001的行的行添加异常添加异常 假假设设要要添添加加一一个个新新的的职职工工时时,首首先先必必需需给给这这名名职职工工分分配配一一个个工工程程。或或者者为为了了添添加加一一名名新新职职工工的的数数据据,先先给给这这名名职职工分配一个虚拟的工程。由于主关键字不能为空工分配一个虚拟的工程。由于主关键字不能为空删除异常删除异常 例例如如,1001号号职职工工要要辞辞职职,

16、那那么么必必需需删删除除一一切切职职工工号号1001的的数数据据行行。这这样样的的删删除除操操作作,很很能能够够丧丧失失了了其其它它有有用的数据用的数据规范化实例规范化实例 5-52采采用用这这种种方方法法设设计计表表的的构构造造,虽虽然然很很容容易易产产生生工工资资报报表表,但但是是每每当当一一名名职职工工分分配配一一个个工工程程时时,都都要要反反复复输输入入大大量量的的数数据据。这这种种反反复复的的输输入入操操作作,很能够导致数据的不一致性。很能够导致数据的不一致性。一张表描画了多件事情,如图-3所示。运用范式规范化设计运用范式规范化设计工程号工程号工程名称工程名称职工号职工号姓名姓名职务

17、职务小时工资率小时工资率工时工时图图-3 -3 函数依赖图函数依赖图工程信息员工信息工程工时信息运用第二范式规范化运用第二范式规范化工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务小时工资率小时工资率工程号工程号职工号职工号工时工时图图-4 -4 运用第二范式运用第二范式工程表员工表工程工时表满足第三范式足第三范式吗? 运用第三范式规范化运用第三范式规范化工程号工程号工程名称工程名称职工号职工号姓名姓名职务职务职务职务小时工资率小时工资率工程号工程号职工号职工号工时工时工程表员工表职务表工程表规范化和性能的关系规范化和性能的关系 为为满满足足某某种种商商业业目目的的,数数据据库库性性能

18、能比比规规范范化化数数据据库更重要库更重要经经过过在在给给定定的的表表中中添添加加额额外外的的字字段段,以以大大量量减减少少需求从中搜索信息所需的时间需求从中搜索信息所需的时间经经过过在在给给定定的的表表中中插插入入计计算算列列如如成成果果总总分分,以方便查询以方便查询进进展展规规范范化化的的同同时时,还还需需求求综综合合思思索索数数据据库库的的性性能。能。总结总结 2-1在需求分析在需求分析阶段,段,设计数据数据库的普通步的普通步骤为:搜集信息搜集信息标识对象象标识每个每个对象的属性象的属性标识对象之象之间的关系的关系在概要在概要设计阶段和段和详细设计阶段,段,设计数数据据库的步的步骤为:绘制制E-R图将将E-R图转换为表格表格运用三大范式运用三大范式规范化表格范化表格总结总结关系型数据库和关系型数据库和 SQL Server 的根本原理的根本原理与数据库设计有关的概念,如数据库建模与数据库设计有关的概念,如数据库建模数据规范化数据规范化用于设计数据库的用于设计数据库的 E-R 图及其实现图及其实现数据完好性数据完好性数据字典、平安设计以及物理设计数据字典、平安设计以及物理设计

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

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