- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SAD数据库设计.ppt
数据库设计 哈尔滨工业大学 国家示范性软件学院 主讲:范国祥 2009.05 本章主要内容 数据库系统及关系数据库简介 数据库逻辑模型设计 ERD模型及质量评价 物理数据库设计及建立 物理数据库提高效率的技巧 描述分布式数据库的不同的体系结构模型 DB和DBMS的体系结构 数据库(DB) :被集中控制和管理的存储数据的完整集合 用ER模型来描述 数据库管理系统(DBMS) :对数据库的访问进行管理和控制的软件 数据库设计的主要任务: 逻辑设计:设计ER模型 物理设计:在具体的数据库系统中实现ER模型 DBMS的重要功能 允许多个用户或应用程序同时访问数据库 无需应用程序就可以访问数据库(SQL语句) 管理已存储数据 关系数据库 关系数据库管理系统将数据存储成表(关系)的结构 表: 元组: 表中的行或称为一条数据记录 域: 表中的列或称为属性 表包含关键字(关键属性,key fields),用来唯一的标识一条记录 关键字是表示表间关系的基础 数据库逻辑模型设计-ERD 识别所有“自然”数据实体(Entity) 从DFD中的全部“数据存储” 从“分析类图”中的部分“类” 从“事物”列表中的部分“事物” 为数据实体命名 给出实体的属性 识别Entity之间的关联关系及关联重数 关联关系需命名 关联重数需判别(1:1、1:M、M:N) 建立关联(“人造”)实体来消除M:N重关系 规范化Entity(满足3NF) 评价ERD质量并做必要的改进 ERD质量的评价 ERD图的设计结果没有标准答案,即不唯一 好的ERD标准: 结构清晰 关联简洁 实体个数适中 属性分配合理 没有低级冗余(重复性冗余) 至少符合3NF 数据库的规范化 通过最小化数据冗余来确保数据库模型的质量 范式的分类 1NF – 没有重复的属性或属性组 2NF – 是1NF 且每个非主属性均函数依赖于整个主属性(主键) 3NF – 是2NF且非主属性间均不存在函数依赖 数据库的规范化 范式的通俗、易懂的解释: 1NF:是对属性的原子性约束,要求属性不可再分解 2NF:是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性(不存在组合关键字中的字段决定非关键字的情况) 3NF:是对属性冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余(不存在传递函数依赖) 3NF数据库设计可以做到,但是未必是最好的数据库 有时为了提高运行效率,必须降低范式标准,适当保留冗余数据。具体做法是:在逻辑模型设计时遵守3NF,降低范式标准的工作放到物理数据模型设计时考虑,即增加字段,允许冗余 物理数据库设计及建立 根据ERD建立物理数据库: 为每个实体创建一个二维表 为每个字段选择适当的数据类型和取值范围 定义每个表的主键(primary keys) 添加外键(foreign keys)来表示1:M的关联关系 定义完整性约束 定义3个方面的完整性约束 域的完整性:用Check来实现约束,在数据库设计工具中,对字段的取值范围进行定义时,有一个Check按钮,通过它定义字段的值城 参照完整性:用PK、FK、表级触发器来实现 用户定义完整性:定义一些业务规则,用存储过程和触发器来实现 执行参照完整性 参照完整性的自动执行 当建立一个包含外键的记录时, DBMS 确保该外键同时作为主键出现在另一个相关的表中 当删除一个记录时, DBMS 确保在其它相关的表中不会出现和该记录主键值相同的外键 当主键值改变时,DBMS保证相关表中没有外键与该主键具有相同的值 提高数据库运行效率的5个办法 (1) 降低范式、增加冗余; 少用触发器、多用存储过程 (2) “体外运算”当计算非常复杂、记录数巨大时,则以文件系统方式用C++等语言计算处理完成之后,最后才入库追加到表中去(电信计费系统设计的经验) 提高数据库运行效率的办法 (3) 水平/垂直分割表 当表中记录太多时则水平分割:以该表主键PK的某个值为界线,将该表的记录水平分割为两个表 当表中字段太多时则垂直分割:将原来的字段分为二组,分别建立二个表 (4) 对数据库管理系统DBMS进行系统优化 即优化各种系统参数,如缓冲区个数 (5) 在使用面向数据的SQL语言进行程序设计时, 尽量采取优化算法 * Systems Analysis Design 5th Edition 数据库系统 = 数据库(DB) + 数据库管理系统(DBMS) 关系数据库表的构成 RMO 的ERD图 复杂ERD分组技巧 ERD中表非常多,以至于画在一张图中过于复杂难以清晰使用,则可以根据系统功能来分组。如果组之间存在相互关联的实体出现,则可以将其画多次,分别在不同的局部ERD中出现 能否用通俗的语言解释1NF、2NF、
您可能关注的文档
- (上海市教育科学研究院).ppt
- 3CDMA关键技术.ppt
- ac换及环境净化材料的现状和发展趋势.pdf
- AgileEASNET平台开发实例开发环境配置.pdf
- Al合金键合界面金属间化合物的生长行为.pdf
- ANSYS接触分析(中文).doc
- ANSYS教程(精心制作完整版).doc
- BEPC实时数据信息管理系统.ppt
- CAD三维绘图教程与案例_很实用.doc
- cMet在乳腺癌组织中的表达及其临床价值.pdf
- 2024-2025学年度火电电力职业鉴定练习题附答案详解【能力提升】.docx
- 2025年01月广东中山大学孙逸仙纪念医院随访中心工程人员招聘1人笔试历年专业考点(难、易错点荟萃)附带答案详解.docx
- 2024-2025学年度火电电力职业鉴定练习题(名校卷)附答案详解.docx
- 2024-2025学年度火电电力职业鉴定练习题(完整版)附答案详解.docx
- 2024-2025学年度火电电力职业鉴定练习题附答案详解【考试直接用】.docx
- 2024-2025学年度火电电力职业鉴定练习题附答案详解【综合题】.docx
- 2024-2025学年度火电电力职业鉴定练习题(A卷)附答案详解.docx
- 2024-2025学年度火电电力职业鉴定练习题附完整答案详解(考点梳理).docx
- 2024-2025学年度火电电力职业鉴定练习题附答案详解【巩固】.docx
- 2021年二建管理课件.pptx
文档评论(0)