已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 第十四章数据库设计与应用 2 本章基本内容与要求 基本内容关系模式规范化数据库设计数据库技术应用要求掌握关系模式规范化的过程与基本方法熟悉数据库设计过程了解典型的关系数据库产品和常用的数据库应用系统 3 第一节关系模式规范化 数据库设计的关键是数据模式的设计 如何把现实世界表达成一个合适的数据模式 如何选择一个比较好的关系模式的集合 关系模式中某些数据依赖问题的存在 可能会导致数据库中数据冗余和操作异常等问题 关系模式规范化方法使用范式这一概念来定义关系模式所符合的不同级别的要求 较低级别范式的关系模式 经模式分解可转换为若干符合较高级别范式要求的关系模式 4 一 关系模式规范化问题的提出 5 关系模式规范化问题的提出 存在问题数据冗余更新异常插入异常删除异常解决方法 分解为二个关系R1 教师号 教师姓名 联系电话 R2 教师号 课程号 课程名 6 7 二 函数依赖 定义 定义14 1设有关系模式R A1 A2 An 简记为R U 其中U A1 A2 An 设X Y是U的子集 r是R的任一具体关系 t1 t2是r中的任意两个元组 若t1 X t2 X 即元组t1 t2在X上的属性值相等 则t1 Y t2 Y 元组t1 t2在Y上的属性值相等 则称X函数决定Y 或Y函数依赖于X 记为X Y 8 函数依赖 例 有一个教学管理关系模式R SNO SNAME CNO GRADE CNAME TNAME TADDRESS 其中各属性的含义为 SNO 学号 SNAME 学生姓名 CNO 课程号 GRADE 学生成绩 CNAME 课程名 TNAME 教师姓名TADDRESS 教师地址 则根据教学管理的现实世界 在关系模式R的任何关系r中存在下列函数依赖关系 SNO SNAME CNO CNAMETNAME TADDRESS SNO CNO GRADE 9 函数依赖 分类 完全函数依赖在关系模式R U 中 如果X Y 并且对于X的任意一个真子集X1 X1 Y均不成立 则称Y完全依赖于X 例 学号 课程号 成绩为完全函数依赖 部分函数依赖在关系模式R U 中 如果X Y 并且至少存在X的一个真子集X1 使得X1 Y成立 则称Y部分依赖于X 例 学号 课程号 姓名为部分函数依赖 传递函数依赖在关系模式R U 中 如果X Y并且Y Z 且Y X则称Z传递依赖于X 例 学号 系地址为传递函数依赖 因为学号 系部 系部 系地址 10 用函数依赖定义主码 侯选候选码 候选键 设有关系模式R U F是R上的函数依赖集 K是U的一个子集 如果 F逻辑蕴涵K U 不存在K的任何真子集K1使得F逻辑蕴涵K1 U 则称K是R的候选码或候选键 主码 关键字 当侯选候选码多于一个时 可以选中其中的一个作为主码 主属性所有侯选候选键中的属性称为主属性 非主属性不包含在任何侯选候选键中的属性称为非主属性 11 例 关系模式 学号 课程号 教师号 教师姓名 联系电话或地址 在这个关系模式中存在下列自然的函数依赖集F 学号 课程号 教师号 教师号 教师姓名 教师号 联系电话或地址 确定侯选候选码 主码 主属性 非主属性 分析 由函数依赖集F 根据传递规则可以推出 学号 课程号 教师姓名 学号 课程号 联系电话或地址再根据自反律可以推出 学号 课程号 学号 课程号 进一步根据增广律推出 学号 课程号 学号 课程号 教师号 教师姓名 联系电话或地址 因此 学号 课程号 是该关系模式的侯选候选码 并且在这个关系模式中没有其他的侯选候选码 因此关系模式的主属性为 学号 和课程号 非主属性为 教师号 和教师姓名 12 三 关系模式规范化 规范化的基本思想是消除关系模式中的数据冗余 消除数据依赖中的不合适的部分 解决数据插入 删除与修改时发生的异常现象 这就要求关系数据库设计出来的关系模式要满足一定的条件 我们把关系数据库的规范化过程中为不同程度的规范化要求设立的不同的标准或准则称为范式 NormalForm 满足最低要求的叫第一范式 简称1NF 一个低一级范式的关系模式 通过模式分解可以转换为若干个高一级范式的关系模式的集合 这种过程就叫规范化 13 第一范式 1NF 第一范式 FirstNormalForm 是最基本的规范化形式 即关系中每个属性都是不可再分的简单项 定义11 2如果关系模式R所有的属性均为简单属性 即每个属性都是不可再分的 则称R属于第一范式 简称1NF 记作R 1NF 在关系数据库中只讨论规范化的关系 因此第一范式是最低要求 即所有关系都必须符合第一范式 如果不满足第一范式 必须转化成符合第一范式的关系 14 第二范式 2NF 定义11 3若关系模式R 1NF 且每一个非主属性完全函数依赖于关系R的某个侯选候选键 则关系R为第二范式 记为R 2NF 2NF不允许关系模式的非主属性与侯选候选码之间存在部分函数依赖 如关系模式R 教师号 教师姓名 地址或联系电话 课程号 课程名 的侯选候选码是 教师号 课程号 即 教师号 课程号 课程名 但课程号是 教师号 课程号 的子集 实际上 课程号 课程名也就是说在关系R中存在着非主属性对侯选候选码的部分依赖 事实上在这个关系模式中还存在着其他的非主属性对侯选候选键码的部分函数依赖 教师号 课程号 教师姓名 教师号 课程号 联系电话或地址因此关系R不是第二范式 将关系R分解为R1 教师号 教师姓名 联系地址 R2 教师号 课程号 课程名 由于R1的侯选候选码键只有教师号 在R1中不存在非主属性对侯选候选键的部分函数依赖 因此R1属于第二范式 15 第三范式 3NF 定义11 4若关系模式R 2NF 若每一个非主属性都不传递依赖于某个侯选候选码 则关系R属于第三范式 记为 R 3NF 考察关系模式 S SNO SNAME AGE DNO DEAN 其中各属性代表的含义如下 SNO 学号 SNAME 学生姓名 AGE 学生年龄 DNO 学生所在的系号 DEAN 学生所在系的系名 这个关系模式中存在的函数依赖集如下 F SNO NAME SNO AGE SNO DNO DNO DEAN 在这个关系模式中 显然SNO SNO SNAME AGE DNO DEAN 即SNO是关系模式的侯选候选码 且是唯一的侯选候选码 并且 非主属性对侯选候选码是完全函数依赖 不存在非主属性对侯选候选码的部分函数依赖 因此 关系模式S 2NF 然而SNO DEAN是由SNO DNO DNO DEAN两个函数依赖推出的 我们称系名 DEAN 传递依赖于学号 SNO 因此S不属于第三范式 16 定义11 4若关系模式R 2NF 若每一个非主属性都不传递依赖于某个侯选候选码 则关系R属于第三范式 记为 R 3NF 如果我们将上述关系分解成 S1 SNO SNAME AGE DNO S2 DNO DEAN 则S1 3NF S2 3NF 它们各自的关系实例克服了存储上的数据冗余 操作上的更新异常 删除异常 插入异常等问题 17 从1NF到3NF 一个关系只要其分量都是不可分的数据项 就可称作规范化的关系 也称作1NF 消除1NF关系中非主属性对候选码的部分函数依赖 得到2NF 消除2NF关系中非主属性对候选码的传递函数依赖 得到3NF 18 例 有一商品供应的关系模式SP SNO PNO SCITY STATUS PRICE QTY 其中各属性的含义如下 SNO 供应商编号PNO 零件编号SCITY 供应商所在的城市STATUS 供应商的状态PRICE 零件的价格QTY 零件的数量其属性组上的函数依赖集 F SNO SCITY SCITY STATUS PNO PRICE SNO PNO QTY 19 例 模式SP属于第一范式 根据Armstrong推理规则 由F可以推出 SNO PNO SNO PNO SCITY STATUS PRICE QTY SP的侯选候选键是 SNO PNO SP的非主属性为 SCITY STATUS PRICE QTY非主属性SCITY PRICE对侯选候选键是部分函数依赖 STATUS对侯选候选键是传递函数依赖 为除去部分函数依赖可将关系模式SP分解为 SP1 SNO SCITY STATUS SP2 PNO PRICE SP3 SNO PNO QTY 在SP1的侯选候选键是SNO 在其中存在着非主属性对侯选候选键的传递函数依赖性 为除去传递函数依赖 可将SP1分解为 SP11 SNO SCITY SP12 SCITY STATUS 所以关系模式分解为3NF范式的结果为 SP11 SNO SCITY SP12 SCITY STATUS SP2 PNO PRICE SP3 SNO PNO QTY 可以证明以上每次分解均符合无损连接和保持依赖的条件 20 第二节关系数据库设计 数据库设计是指根据用户需求研制数据库结构并应用的过程 数据库设计就是指对于给定的应用环境 构造最优的数据库模式 建立数据库及其应用系统 使之能有效地存储数据 满足用户的信息要求和处理要求 也就是把现实世界中的数据 根据各种应用处理的要求 加以合理组织 使之能满足硬件和操作系统的特性 利用已有的DBMS来建立能够实现系统目标的数据库 21 一 数据库设计步骤 22 数据库设计六个步骤 需求分析阶段需求分析是指准确了解和分析用户的需求 这是最困难 最费时 最复杂的一步 但也是最重要的一步 它决定了以后各阶段设计的速度和质量 概念结构设计阶段概念结构设计是指对用户的需求进行综合 归纳与抽象 形成一个独立于具体DBMS产品的概念模型 是整个数据库设计的关键 逻辑结构设计阶段逻辑结构设计是指将概念模型转换成某个DBMS所支持的数据模型 并对其进行优化 物理结构设计阶段物理结构设计是指为逻辑数据模型选取一个最适合应用环境的物理结构 包括存储结构和存储方法 数据库实施阶段数据库实施是指建立数据库 编制与调试应用程序 组织数据入库 并进行调试运行 数据库运行与维护阶段数据库运行与维护是指对数据库系统实际正常运行使用 并时时实时进行评价 调整与修改 23 二 数据库设计主要阶段的任务 需求分析 需求分析的任务是通过详细调查现实世界要处理的对象 组织 部门 企业等 充分了解原系统 手工系统或计算机系统 的工作概况 明确用户的各种需求 然后在此基础上确定新系统的功能 信息要求指用户需要从数据库中获得信息的内容与性质 由信息要求可以导出数据要求 即在数据库中需要存储哪些数据 处理要求指用户要完成什么处理功能 对处理的响应时间有什么要求 处理方式是批处理还是联机处理 安全性与完整性要求指对数据库中的数据应该实施哪些约束和控制以保证数据的完整性和安全性 24 二 数据库设计主要阶段的任务 概念结构设计 概念模式独立于数据库系统的逻辑结构 独立于具体的DBMS产品 也独立于计算机系统 概念模式是面向现实世界的数据模型 25 二 数据库设计主要阶段的任务 逻辑结构设计 将概念设计阶段产生的概念模式变换为逻辑模式 步骤 以关系模型为例 将概念结构转换为一般的关系模型将以上得到的一般关系模型向特定DBMS支持下的数据模型转换对数据模型进行优化 26 二 数据库设计主要阶段的任务 物理结构设计 数据库的物理设计是对已确定的逻辑数据结构 利用DBMS所提供的方法 技术 以较优的数据存储结构 数据存取路径 合理的数据存放位置以及存储分配 设计出一个高效的 可实现的物理数据库结构 物理设计常常包括某些操作约束如响应时间与存储要求等 27 物理设计的内容 确定数据的存储结构存取路径的选择和调整确定数据存放位置确定存储分配 物理设计过程需要对时间 空间效率 维护代价和各种用户要求进行权衡 其结果可以产生多种方案 在实施数据库前 对这些方案进行细致的评价 以选择一个较优的方案作为来设计数据库的物理结构 28 第三节数据库技术应用 典型的关系数据库管理系统产品ORACLEMicrosoftSQLServerMicrosoftAccess 29 选择关系DBMS产品时考虑的主要因素 数据库应用的规模 类型和用户的数量 速度指标 软件 硬件平台性价比 开发者的经验和习惯 安全性要求 对分布式应用的支持等 30 典型的数据库应用系统实例航空售票系统座位预定信息座位分配 座位确认 餐饮选择等 航班信息航班号 飞机型号 机组号 起飞地 目的地 起飞时间 到达时间 飞行状态等 机票信息票价 折扣 是否有票等 31 典型的数据库应用系统实例银行业务系统顾客信息姓名 身份证号码 地址 电话等信息 账户信息账号 存款金额 余额 取款金额 日期等信息 顾客与账户关系信息身份证号码 账号等信息 32 典型的数据库应用系统实例超市业务系统销售信息连锁点 日期 时间 顾客 商品 数量 总价等 商品信息商品名称 单价 进货数量 供应商 商品类型 摆放位置等 供应商信息供应商名称 地点 商品 信誉等 33 典型的数据库应用系统实例工厂的管理信息系统销售记录产品 服务 客户 销售人员 时间等 雇员信息姓名 地址 工资 津贴 所得税款等 财务信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基于机器学习的电池状态估计
- 房租租金分配协议书
- 房贷合约解除协议书
- 房顶倾斜修复协议书
- 手工加工合同协议书
- 手机供货销售协议书
- 手机转让付款协议书
- 打包带销售合同范本
- 打字店聘用合同范本
- 打桩合同协议书范本
- 2024年八年级上学期学情调研语文试题及答案
- T/CHES 54-2021取水权交易可行性报告编制导则
- 个人充电桩免责协议书
- 梯形、矩形渠道水力计算表-有用(算出流速和流量)
- 重庆学法减分试题及答案
- 2025年熔化焊接与热切割作业中考试练习题(100题)附答案
- 企业会计准则实施典型案例
- 降低留置针堵管发生率:PDCA质量持续改进
- 违建自愿拆除协议书
- 关于员工招聘与培训管理的办法
- 机械设计制造及其自动化毕业论文-基于PLC的机械手控制系统设计
评论
0/150
提交评论