文档详情

选课数据库设计过程.ppt

发布:2017-03-20约4.4千字共16页下载文档
文本预览下载声明
选课数据库的设计 选课数据库的设计 实体与联系 实体:客观存在并可以相互区分的事物称为实体,如:学生、课程、系部等。 属性:实体所具有的某一特性 联系:就是实体与实体之间的联系 实例:一个具体的事物 主要的实体对象有: 学生、课程 实体间的联系有: 学生-课程 首先需要建立概念模型(E-R模型表示) 选课数据库的设计 E-R模型图: 选课数据库的设计 关系模型的概念 关系是一个具有下列特点的二维表格: 1. 表格中的每一列都是不可再分的基本数据项 2. 每列的名字不同,同一列的数据类型相同。 3. 行的顺序无关紧要 4. 列的顺序无关紧要 5. 关系中不允许有完全相同的两行存在 选课数据库的设计 由E-R模型转换为关系模型 方法:是一个实体或联系转换为一个表,属性就是表的列(字段) 将图1转换为关系模型如下: 选课数据库的设计 选课数据库的设计 关系模型规范化 1. I范式(1NF) 每个属性都是不可再分的基本数据项,则称该关系是I范式。如表2、3、4都符合1NF。 存在的问题: 数据冗余、数据不一致和维护困难等缺点。 选课数据库的设计 2. 关键字 是能唯一标识每一行的列或列的组合。一个表可能有多个关键字,选定其中一个作为主关键字。其余的称为候选关键字。 3. 函数依赖 完全函数依赖:如表2中课程编码是主关键字。课程名称完全是由课程编码所决定,对于不同的课程编码,都会有一个课程名称与它对应,这时称课程名称完全函数依赖于课程编码,或课程编码决定课程名称,记作课程编码-课程名称。 部分函数依赖 :表4中(学号,课程名称)是主关键字, (学号,课程名称)-成绩,但姓名只依赖于学号,与课程名无关,即它只依赖主关键字的一部分,则称姓名部分函数依赖于主关键字(学号,课程名称)。 传递函数依赖:表2中课程编码-系部编码,系部编码-系部名称,则系部名称是通过系部编码的传递来依赖课程编码的 选课数据库的设计 4. II范式(2NF) II范式首先是I范式,而且每一个非主属性完全函数依赖于主关键字。 表3学生表是2NF 表4学生选课表:姓名部分函数依赖主关键字,不是2NF 处理方法:将部分函数依赖关系中的主属性和非主属性从关系中取出来,单独构成一个关系模式,将关系模式中余下的属性,加上主关键字构成另一个关系。 例如表4中只需将姓名分离出来,由于姓名已在学生表中存在,只需删除即可。 选课数据库的设计 符合2NF的关系模式仍然存在数据容易、数据不一致的问题 4. III范式(3NF) III范式首先是II范式,且关系中的任何一个非主属性都不传递依赖于主关键字 例如表2中:系部名称和课程编码之间通过系部编码进行函数传递依赖,因此提取系部编码和系部名称构成系部表,如表6;其余的属性构成新的课程表,如表7 选课数据库的设计 选课数据库的设计 表3学生表中班级名称不规范,可增加班级编码,和班级名称构成班级表,如表8;将表3中的班级名称改为班级编码,进而将表3规范为表9的学生表1。 选课数据库的设计 选课数据库的设计 选课数据库的设计 表间的关系 选课数据库的设计 * * Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 学生 学号 姓名 班级 选课密码 学生-课程 学号 姓名 课程名称 自愿号 选课状态 成绩 课程 课程编码 课程名称 课程分类 学分 教师 系部编码 系部名称 上课时间 限选人数 选课人数 m n 图1 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 表1 课程授课一览表 课程编码 001 002 。。。 课程名称 SQL Server2005基础教程 Java技术开发应用 。。。 课程分类 信息技术 信息技术 。。。 学分 4 3 。。。 授课情况 部门 现代管理系 现代管理系 。。。 教师 张之阳 陈伟彬 。。。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-20
显示全部
相似文档