Oracle数据库管理、开发与实践 作者 杨永健 刘尚毅 第1章 数据库概念.pptVIP

Oracle数据库管理、开发与实践 作者 杨永健 刘尚毅 第1章 数据库概念.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在数据库中,数据之间存在着密切的联系。关系型数据库由相互联系的一组关系所组成,每个关系包括关系模式和关系值两个方面。关系模式是对关系的抽象定义,给出关系的具体结构;关系的值是关系的具体内容,反映关系在某一时刻的状态。一个关系包含许多元组(记录行),每个元组都是符合关系模式结构的一个具体值,并且都分属于相应的属性。在关系数据库中的每个关系都需要进行规范化,使之达到一定的规范化程度,从而提高数据的结构化、共享性、一致性和可操作性。 规范化是把数据库组织成在保持存储数据完整性的同时最小化冗余数据的结构的过程。规范化的数据库必须符合关系模型的范式规则。范式可以防止在使用数据库时出现不一致的数据,并防止数据丢失。关系模型的范式有第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴德斯科范式(BCNF)、第四范式(4NF)和第五范式(5NF)等多种。通常数据库只要满足前3个范式就足够用了,下面举例介绍前3个范式。 1.第一范式(1NF) 第一范式是第二和第三范式的基础,是最基本的范式。第一范式包括下列指导原则: 数据组的每个属性只可以包含一个值。 关系中的每个数组必须包含相同数量的值。 关系中的每个数组一定不能相同。 1.2.3 关系型数据库的设计范式 在任何一个关系数据库中,第一范式是对关系模式的基本要去,不满足第一范式(1NF)的数据库就不是关系型数据库。 如果数据表中的每一个列都是不可再分割的基本数据项——即同一列中不能有多个值,那么就称此数据表符合第一范式,由此可见第一范式具有不可再分解的原子特性。 在第一范式中,数据表的每一个行只包含一个实体的信息,并且每一行的每一列只能存放实体的一个属性。比如,对于学生信息,不可以将学生实体的所有属性信息(如,学号、姓名、性别、年龄、班级等)都放在一个列中显示,也不能将学生实体的两个或多个属性信息放在一个列中显示,学生实体的每个属性信息都放在一个列中显示。 如果数据表中的列信息都符合第一范式,那么在数据表中的字段都是单一的,不可再分的。如表1-1就是不符合第一范式的学生信息表,因为“班级”列中包含了“系别”和“班级”两个属性信息,这样“班级”列中的信息就不是单一的,是可以再分的;而表1-2就是符合第一范式的学生信息表,它将原“班级”列的信息拆分到“系别”列和“班级”列中。 表1-1 不符合第一范式的学生信息表 表1-2 符合第一范式的学生信息表 学 号 姓 名 性别 年龄 班级 9527 东*方 男 20 计算机系3班 学 号 姓 名 性别 年龄 系别 班级 9527 东*方 男 20 计算机 3班 2.第二范式(2NF) 第二范式(2NF)是在第一范式的基础上建立起来的,即满足第二范式(2NF)必先满足第一范式(1NF)。第二范式(2NF)要求数据库表中的每个实体(即各个记录行)必须可以被唯一地区分。为实现区分各行记录通常需要为表设置一个“区分列”,用以存储各个实体的唯一标识。在学生信息表中,设置了“学号”列,由于每个学生的编号都是唯一的,因此每个学生可以被唯一地区分(即使学生存在重名的情况下),那么这个唯一属性列被称为主关键字或主键。 第二范式要求实体的属性完全依赖于主关键字,即不能存在仅依赖主关键字一部分的属性,如果存在,那么这个属性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关系。 例如,这里以“学生成绩表”为例,若以(学号、课程)为组合关键字(即复合主键),就会存在如下决定关系。 (学号,课程)→(决定)(姓名、性别、班级、班主任、课程学分、成绩) 在上面的决定关系中,还可以进一步拆分为如下两种决定关系。 (学号)→(决定)(姓名、性别、班级、班主任、成绩) (课程)→(决定)(课程学分) 其中,学号决定了学生的基本信息(包括姓名、性别、班级、班主任等);而课程决定了课程学分,所以这个关系表不满足第二范式。 对于上面的这种关系,可以把上述两个关系表更改为如下3个表。 学生表:STUDENT(学号,姓名,性别、班级、班主任) 课程表:LESSON(课程,课程学分) 学生成绩表:ACHIEVEMENT(学号、课程、成绩) 3.第三范式(3NF) 第三范式(3NF)是在第二范式(2NF)的基础上建立起来的,即满足第三范式(3NF)必先满足第二范式(2NF)。第三范式要求关系表不存在非关键字列对任意候选关键字列的传递函数依赖,也就是说,第三范式要求一个关系表中不包含已在其他表中已包含的非主关键字信息。 所谓传递函数依赖,就是指如果存在关键字段A决定非关键字段B,而非关键字段B决定非关键字段C,则称非关键字段C传递函数依赖于关键字段A。

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档