VFP第3节关系数据库设计基础-教学课件.ppt_第1页
VFP第3节关系数据库设计基础-教学课件.ppt_第2页
VFP第3节关系数据库设计基础-教学课件.ppt_第3页
VFP第3节关系数据库设计基础-教学课件.ppt_第4页
VFP第3节关系数据库设计基础-教学课件.ppt_第5页
免费预览已结束,剩余36页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章关系数据库设计基础 3学时 吉林大学计算机教学与研究中心 Welcome 数据库设计的 个环节 需求分析 了解业务范围 流程 处理细节和数据库存储环境 收集 归纳和分析资料 概念设计 用概念模型对事务及其关系描述 如E R方法 逻辑设计 将概念模型转成关系模型 规范化关系模型 减少数据冗余 避免数据异常操作 主要将人工表优化成数据库表 物理设计 确定数据库存储路径 建数据库 表 表间联系 数据完整性和安全性规则 建主索引 主键 和普通索引 外键 3 1 1人工表与数据库表 1 人工表 纸介质表格和某些电子表格 如Word表或Excel表 人工表的主要特点 无格式性 每列数据类型的不确定性 嵌套性等 3 1 1人工表与数据库表 数据库表 存于外存储器的二维电子表 4 数据库表特点 列原子性 单元格值的单一 关键字值惟一 主属性值非空性 3 1 1人工表与数据库表 关系数据库设计 实质研究如何将人工表转换成数据库表 即规范表的过程 3 1 1人工表与数据库表 规范化方法 将一个表通过投影分解的方法规范成功能等价的多个表 3 1 2数据语义 数据语义 是对数据项含义的规定与解释 数据语义对数据库的影响 修改某些数据项的语义 可能导致重新调整数据库 例如 若一个学院只有一个地址 且一个地址对应一个学院 则学院表中地址可作关键字 且一个学院对应一个记录若规定一个学院可有多个地址 则学院表中一个学院可能对应多个记录或多个地址字段 3 2 1关系模式 关系模式 关系名及其所有属性的集合 描述表结构 CJ 学号 课程码 成绩 关键字 能惟一地标识元组 最少属性的集合 一个关系模式可能有多个关键字 也称键 候选键或候选码 主属性 包含在某关键字中的属性称主属性 外码 关系R一组非关键字属性F 若F与关系S的主键对应 则F是表R的外码或外键 主关键字 选一个关键字作主关键字 也简称为主键 主码 3 2 2函数依赖 函数依赖的作用 通过分析关系模式 中属性的函数依赖关系规范数据库表 3 2 2函数依赖 3 2 2函数依赖 3 2 2函数依赖 传递函数依赖 X Y和Z是不同属性集合 有X Y 但 且Y不是X的子集 则称Z传递函数依赖于X 例如 学号 课程 考试成绩 课堂成绩 实验成绩 考试成绩 课堂成绩 实验成绩 总分因此 总分传递函数依赖于 学号 课程 3 2 2函数依赖 3 3关系模式的规范化 规范化目标 减少数据冗余 便于数据更新 插入和删除 提高时空效率 满足应用要求 规范化方法 对关系模式投影分解 去掉冗余属性 得到更多 较理想的关系模式 数据依赖引发的主要问题 数据冗余和更新异常 解决办法是对关系模式进行合理地分解 即对关系模式规范化 范式 满足特定要求的关系模式集合 有第一 第二 第三 BCNF 第四和第五范式 条件逐渐增强 3 3关系模式的规范化 总体原则 概念单一化 一个关系模式对应一个实体型或实体型间的联系 如学生 学院 课程 学生与课程 必须无损分解 即对新的关系模式进行自然连接后可以还原回原关系模式 3 3 1第一范式 规范化关系模式 每个属性都是不可分割的基本数据项 原子性 也称第一范式 简记为1NF 人工表规范到第一范式 拆分多维表成二维表 考虑属性的原子性 主属性的非空性等 3 3 1第一范式 规范化方法 将嵌套列横向展开变成多个属性 将多值单元格纵向展开多行 某些数据项信息重复存储 3 3 1第一范式 存在的问题 数据冗余度大 一个学生选多门课程需要重复存放学号 姓名等信息 产生冗余数据 3 3 1第一范式 存在的问题 更新异常 学生转学院 必须修改该学生所有元组中学院和学院地址 否则 将造成数据的不一致性 3 3 1第一范式 存在的问题 插入异常 主关键字是 学号 课程 新生的课程 课程不能为空 没确定时 其信息无法加入到关系中 3 3 1第一范式 存在的问题 删除异常 当选课人数少无法开课时 从关系中删除所有与该课程相关的元组 导致删除课程的信息 如课程名和学分 即丢失课程的相关信息 3 3 1第一范式 存在的问题 主要原因 存在非主属性 姓名 性别或学分等 部分函数依赖关键字 学号 课程 例如课程 学分学号 姓名学号 性别导致 学号 课程 学分 学号 课程 姓名 学号 课程 性别等 3 3 2第二范式 第二范式 属于第一范式 其中非主属性都完全函数依赖于任意关键字 即 消除非主属性对任何关键字的部分函数依赖 3 3 2第二范式 规范化方法 对关系模式按实体型及其联系进行投影分解 分解成多个关系模式 消除非主属性对关键字的部分函数依赖 例如 学生 课程及其联系 成绩 3 3 2第二范式 还原验证 用 Select自然连接验证 存在的问题 数据冗余 更新异常 插入异常和删除异常等问题 如 某学院学生都毕业后 丢失学院信息 产生删除异常 重复存储学院地址 总分 3 3 2第二范式 问题存在的主要原因 存在非主属性传递函数依赖主属性 例如 在XS中 学号是关键字 有 学号 学院学院 学号学院 学院地址故学院地址传递函数依赖学号 同样 总分传递函数依赖 学号 课程 3 3 3第三范式 第三范式 属于第二范式 非主属性对任何关键字都不存在传递函数依赖 简记为3NF 规范化方法 对关系模式进行投影 分解成多个关系模式 或直接去掉冗余属性 消除非主属性对关键字的传递函数依赖 3 3 3第三范式 例如 对XS投影分解成学生和学院两个关系模式 消除非主属性学院地址对关键字学号的传递函数依赖 3 3 3第三范式 存在的问题 在少数关系模式中仍然存在数据冗余 数据更新异常等问题 进一步规范化 在设计实用数据库时 三级范式基本满足要求 如果需要进一步规范化 可以用BCNF 4NF和5NF 总体规则 关系模式必须满足某级范式 范式级别高 数据冗余小 关系数多 数据更新异常少 关系连接操作次数多 系统开销大 3 3 3第三范式 例如 输出学号 姓名 学院名 课程名和总分 通过一级范式无连接 而通过三级范式需4个关系连接 Select学号 姓名 学院 课程 总分 FromXSXXB SelectXSA 学号 姓名 学院名 课程名 考试成绩 课堂成绩 实验成绩As总分 FromXSA XYB CJB KCB WhereXSA 学号 CJB 学号And XSA 学院码 XYB 学院码And CJB 课程码 KCB 课程码 3 4 1数据编码 数据编码 表示事物对象的一种符号 是对象在某一范围内的唯一标识 如学号 身份证号 性别码 民族码 书号 车牌号等 数据编码的作用 数据规范化 增强通用性 准确性 易自动化获取 节省存储空间 单体编码 用于标识对象 编码中各位没有特定含义 通常由国家统一标准 例如 性别码 1男 2女 民族码 01汉族 11满族 省市码 11北京 22吉林 3 4 1数据编码 复合编码 由若干段编码组成 每段编码表示不同的含义 如学号 身份证号 书号等 分段方法 有按位分段 如身份证号 分隔符 如 或 分段 如图书或期刊号 按位分段法更适合计算机数据处理 如身份证 3 4 1数据编码 又如学生教学号 3 4 2数据编码对关系模式的影响 单体编码 可节省存储空间 如性别 民族 3 4 2数据编码对关系模式的影响 复合编码 能减少数据冗余 如利用学号可以去掉学院码属性 3 4 2数据编码对关系模式的影响 复合编码的利弊 数据复合编码是多个属性的组合 破坏属性的原子性 但方便操作和节省存储空间 3 5关系数据库物理设计 1 启动VFP 单击开始菜单 程序 MicrosoftVisualFoxPro6 0 MicrosoftVisualFoxPro6 0 2 建立数据库XSXX 单击文件菜单 新建 选定文件类型为数据库 单击新建文件按钮 在创建对话框中 从保存在框中选择本地盘 E 单击创建新文件夹工具 将新建文件夹改为 D 单击打开按钮 在数据库名框内输入 XSXX 单击保存按钮后 系统建立空数据库 并进入数据库设计器 XSXX 3 5关系数据库物理设计 3 设置默认目录 单击工具菜单 选项 文件位置选项卡 默认目录 修改按钮 选择使用默认目录 单击目录选择按钮 双击E 单击D 选定 确定 设置为默认值 确定按钮 3 5关系数据库物理设计 创建表 单击文件菜单 新建 选定文件类型为表 单击新建文件按钮 在创建对话框的输入表名框内输入表名 如XSB 单击保存按钮 在表设计器中输入字段的字段名 类型 宽度 小数位数 字段有效性的规则 信息和默认值 设置主键和外码 在表设计器中 选定索引选项卡 在索引名列中输入索引名 如XSB 在类型列中选择主索引 主键 或普通索引 外码 在表达式列中输入关键字 单击确定按钮

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论