欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据库设计准则(第一、第二、第三范式说明).pdf

    • 资源ID:75100654       资源大小:13KB        全文页数:3页
    • 资源格式: PDF        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库设计准则(第一、第二、第三范式说明).pdf

    数据库设计准则(第一、第二、第三范式说明)I、关系数据库设计范式介绍1.1 第一范式(1NF)无重复的列所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式(1NF)中表的每一行只包含一个实例的信息。简而言之,第一范式就是无重复的列。说明:在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。1.2 第二范式(2NF)属性完全依赖于主键 消除部分子函数依赖 第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。第二范式(2NF)要求数据库表中的每个实例或行必须可以被惟一地区分。为实现 区分通常需要为表 加上一个列,以存储各 个实例的 惟一标识。例如 员工信息表中加上了员工编号(emp_id)列,因为每个 员工的员工编号 是惟一的,因此每个 员工可以被惟一区分。这个惟一属性列 被称为主关键字 或主键、主码。第二范式(2NF)要求实体的属性 完全依赖于主 关键字。所谓 完全依赖 是指不能 存在仅依赖主 关键字一部分的属性,如果存在,那么这 个属性 和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关系。为实现 区分通常需要为表 加上一个列,以存储各 个实例的 惟一标识。简而言之,第二范式就是属性完全依赖于主键。1.3 第三范式(3NF)属性不依赖于其它非主属性 消除传递依赖 满足第 三范式(3NF)必须先满足第二范式(2NF)。简而言之,第 三范式(3NF)要求一个数据库表中不包含已在其它表中 已包含的 非主关键字信息。例如,存在一个 部门信息表,其中每个 部门有部门编号(dept_id)、部门名称、部门 简介等 信息。那么在的员工 信息表中列出部门编号后 就不能 再将部门名称、部门简介等 与部门有关的信息 再加入员工 信息表中。如果不存在部门信息表,则根 据第三范式(3NF)也应该 构建它,否则就会有大量的数据 冗余。简而言之,第 三范式就是属性不 依赖于其它非主 属性。II、范式应用实例剖析下面以 一个学校 的学生系统为例分 析说明,这几个范式的 应用。首先第一范式(1NF):数据库表中的 字段 都是单一属性的,不可再分。这个 单一属性由基本 类型 构成,包括整型、实数、字符型、逻辑型、日期型等。在当前的任何关系数据库 管理系统(DBMS)中,傻瓜也 不可能 做出不符合第一范式的数据库,因为这些 DBMS 不允许你 把数据库表的一列 再分成二列或多列。因此,你想在现有的 DBMS 中设计 出不符合 第一范式的数据库都是不可能的。首先我们确 定一 下要设计的内容包括那些。学号、学生 姓名、年龄、性别、课程、课程学分、系别、学科成绩,系办地址、系办电话 等信息。为 了简单我们暂时 只考虑 这些字段 信息。我们对于这些信息,说关 心的问题有如下几个方面。?学生 有那些 基本信息?学生 选了那些 课,成绩是什么?每个 课的学分是多 少?学生 属于那 个系,系的基本信息是什么。2.1 第二范式(2NF)实例分析首先我们考虑,把所有 这些 信息放到一个表中(学号,学生姓名、年龄、性别、课程、课程学分、系别、学 科成绩,系办地址、系办电话)下面存 在如下的依赖关系。(学号)(姓名,年龄,性 别,系别,系办地 址、系办电话)(课程名称)(学分)(学号,课程)(学科成绩)2.1.1 问题分析因此不满足第二范式的要求,会产生如下问题数据冗余:同一门课程由 n 个学生选修,学分就重复 n-1 次;同一个 学生选修了 m门课程,姓名和 年龄就重复 了 m-1 次。更新异常:1)若调整了 某门课程的学分,数据表中所有行的 学分 值都要 更新,否则会 出现同一门课程学分不同的 情况。2)假设要开设一门新的课程,暂时还没 有人选修。这样,由于还没 有 学号关键字,课程名称和学 分也无法记录 入数据库。删除异 常:假设 一批学生已 经完成课程的选修,这些选修记录 就应该 从数据库表中 删除。但是,与 此同时,课程名称和学 分信息 也被 删除了。很显然,这也会 导致插 入异常。2.1.2 解决方案把选课 关系表 SelectCourse改为如下三个表:?学生:Student(学号,姓名,年龄,性 别,系 别,系办地址、系办电话);?课程:Course(课程 名称,学分);?选课 关系:SelectCourse(学号,课程 名称,成绩)。2.2 第三范式(3NF)实例分析接着看 上面的学生 表 Student(学号,姓名,年龄,性别,系别,系办地址、系办电话),关键字为单一关 键字学号,因为存在如下决定关系:(学号)(姓名,年龄,性别,系别,系办地址、系办电话)但是还存在下面 的决定关系(学号)(所在 学院)(学院地点,学院电话)即存在非关键字段 学院地点、学院电话 对关 键字段 学号的传递函 数依赖。它也会存 在数据 冗余、更新异常、插入异常和删除异 常的情况。(數據的更新,刪除異常這里就不分 析了,可 以參照 2.1.1進行分 析)根据第三范式把学生关系表分为如 下两个表就可 以滿足第三范式 了:学生:(学号,姓名,年龄,性别,系别);系别:(系别,系办地址、系办电话)。总结上面的数据库表就是 符合 I,II,III范式的,消除了数据冗余、更新异常、插入异常和删除异常。

    注意事项

    本文(数据库设计准则(第一、第二、第三范式说明).pdf)为本站会员(索****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开