北大青鸟MYSQL基础教程.ppt

上传人:sh****n 文档编号:7466125 上传时间:2020-03-21 格式:PPT 页数:33 大小:317KB
返回 下载 相关 举报
北大青鸟MYSQL基础教程.ppt_第1页
第1页 / 共33页
北大青鸟MYSQL基础教程.ppt_第2页
第2页 / 共33页
北大青鸟MYSQL基础教程.ppt_第3页
第3页 / 共33页
点击查看更多>>
资源描述
数据库设计 第二学期 2 ACCP第一学期SQL知识回顾 数据库基本概念SQL查询语言基本知识SQLServer2000的使用 3 ACCP第二学期SQL课程目标 理解数据库设计过程T SQL编程理解事务的概念视图存储过程触发器游标SQL安全模型 第一章 数据库设计 5 目标 理解与数据库设计有关的概念 如数据库建模实体关系模型理解用于设计数据库的E R图及其实现理解数据规范化数据完整性了解数据字典 数据完整性和数据库服务器设计 6 数据库设计和建模必要性 好的数据库结构有利于 节省数据的存储空间能够保证数据的完整性方便进行数据库应用系统的开发设计不好的数据库结构将导致数据冗余 存储空间浪费内存空间浪费 7 设计数据库 不管数据库的大小和复杂程度如何 可以用下列基本步骤来设计数据库 收集信息标识对象设计数据模型标识每个对象的信息类型标识对象之间的关系 8 数据建模的概念 将现实世界的数据转换成信息世界的数据的过程称为建模 9 数据建模步骤 10 建立外模式 外模式是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述是数据库用户的数据视图是与某一应用有关的数据的逻辑表现不依赖于数据库的逻辑结构 外模式是与用户有关的数据模型 11 建立概念模型1 2 概念模式是数据库中全体数据的逻辑结构和特征的描述 是所有用户的公共数据视图 概念模式是整个组织的数据视图 表示数据库中的全部数据内容 因此一个数据库只有一个概念模式 12 建立概念模型2 2 概念模式由若干个概念记录类型组成 它不仅要描述概念记录类型 还要描述记录之间的联系 所允许的操作 数据的完整性 安全性和其它数据控制方面的要求 概念模型不涉及到存储结构 访问技术等细节 设计概念模型的方法有多种 例如实体关系模型 对象模型等 13 建立内模型 内模式是数据物理结构和存储方式的描述 是数据在数据库内部的表示方法 一个数据库只有一个内模式 内模式定义了所有内部记录类型 索引和文件的组织形式 以及数据控制方面的细节 14 使用DBMS设计数据库体系结构 15 概念模型设计 实体关系模型 实体关系模型 DB设计过程 并且表示DB的整个逻辑结构实体 实体可以是具体的 例如一个人或一本书 也可以是抽象的 如一个节日或一个概念 属性 实体是由一组属性来表示的 例如 Person 个人 实体的属性有Name 名称 SSN Age 年龄 Street 街道 City 城市 关系 关系是两个或多个实体之间的联系 16 关系的类型 17 E R图的符号 18 E R图1 2 19 E R图2 2 20 什么是规范化 我们的任务是研究模式设计 研究设计一个 好 的 没有 毛病 的 关系模式的办法 数据依赖是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系 21 三级范式1 3 第一范式的定义 如果一个表中没有重复组 即行与列的交叉点上只有一个值 而不是一组值 且定义了关键字 所有非关键属性都依赖于关键字 则这个表属于第一范式 常记成1NF 例如 图1中的表属于1NF 它的关键字是 22 三级范式2 3 第二范式的定义 如果一个表属于1NF 且不包含部分依赖性 既没有任何属性只依赖于关键字的一部分 则这个表属于第二范式 常记成2NF 将1NF转换成2NF的方法是分解 23 三级范式3 3 第三范式的定义 如果一个表属于2NF 且不包含传递依赖性 则这个表是第三范式 常记成3NF 满足3NF的表中不包含传递依赖 即没有一个非关键属性依赖于另一个非关键属性 或者说没有一个非关键属性决定另一个非关键属性 24 规范化实例1 5 假设某建筑公司要设计一个数据库 公司的业务规则概括说明如下 公司承担多个工程项目 每一项工程有 工程号 工程名称 施工人员等 公司有多名职工 每一名职工有 职工号 姓名 性别 职务 工程师 技术员 等 公司按照工时和小时工资率支付工资 小时工资率由职工的职务决定 例如 技术员的小时工资率与工程师不同 公司定期制定一个工资报表 如图 1所示 25 规范化实例2 5 图 1某公司的工资表 26 规范化实例3 5 图 2 27 规范化实例4 5 1 表中包含大量的冗余 可能会导致数据异常 a 更新异常例如 修改职工号 1001的职务 则必须修改所有职工号 1001的行 b 添加异常若要增加一个新的职工时 首先必须给这名职工分配一个工程 或者为了添加一名新职工的数据 先给这名职工分配一个虚拟的工程 因为主关键字不能为空 c 删除异常例如 1001号职工要辞职 则必须删除所有职工号 1001的数据行 这样的删除操作 很可能丢失了其它有用的数据 28 规范化实例5 5 2 采用这种方法设计表的结构 虽然很容易产生工资报表 但是每当一名职工分配一个工程时 都要重复输入大量的数据 这种重复的输入操作 很可能导致数据的不一致性 29 用函数依赖图表示所有属性之间存在的函数依赖关系 如图3所示 1 图上方的箭头表示关键属性决定非关键属性 2 图下方的箭头表示属性之间的函数依赖性 函数依赖图 图 3函数依赖图 30 再看这三个表的函数依赖图 图 4三个表的函数依赖图 31 画出四个表的函数依赖图 从函数依赖图可见 已经消除职工表中的传递依赖 这四个表都属于第三范式 在绝大多数情况下 一个数据库的所有表都满足3NF 就基本达到数据库设计的目标 32 数据库设计中的其他因素 数据字典数据元素定义可以独立于表定义 也可以是表定义的一部分数据类型强制完整性数据的可靠性和准确性数据库服务器设计 33 总结 关系型数据库和SQLServer的基本原理与数据库设计有关的概念 如数据库建模数据规范化用于设计数据库的E R图及其实现数据完整性数据字典 安全设计以及物理设计
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!