工作任务之: 1、“网上考试系统”数据库分析 2、“网上考试系统”数据库概要设计 3、“网上考试系统”数据库逻辑设计 教学情境1 “网上考试系统”数据库设计 工作任务之: 1、“网上考试系统”数据库分析 2、“网上考试系统”数据库概要设计 3、“网上考试系统”数据库逻辑设计
教学目标 通过本课程的学习,要求达到如下的教学目标: 1. 了解数据库设计的基本步骤和方法; 1. 了解数据库设计的基本步骤和方法; 2. 掌握数据库的概念结构、逻辑结构、物理结构设计原则和方法; 3. 了解数据库系统的实施办法; 4. 了解数据库系统的安全保护机制 九江职业技术学院计算机教研室
工作任务1 “网上考试系统”数据库分析 九江职业技术学院计算机教研室
任务背景描述 为适应学院的现代化管理需要,切实、有效地做好学院种类繁多的考务管理工作,以实现学院基础课程考试的无纸化管理。本软件开发项目组承接“九江职业技术学院网上考试系统”项目开发工作。为此,需要设计一个“学生考试管理系统”数据库exam。 九江职业技术学院计算机教研室
1-1 “网上考试系统”数据库分析 需求分析是整个数据库设计过程的基础,要收集数据库所有用户的信息内容和处理要求,并加以规格化和分析。这是最费时、最复杂的一步,但也是最重要的一步,相当于待构建的数据库大厦的地基,它决定了以后各步设计的速度与质量。需求分析做得不好,可能会导致整个数据库设计返工重做。在分析用户需求时,要确保用户目标的一致性。 九江职业技术学院计算机教研室
1-2 数据库分析 [任务1]:基于上面的任务背景描述,给出“网上考试系统”的数据库系统需求分析结果——数据流图(DFD)。 无效身份 帐号、密码 有效身份 考试数据表 九江职业技术学院计算机教研室
1-2 数据库分析 [任务2]:基于上面的任务背景描述,给出“网上考试系统”的数据库系统需求分析结果——数据字典(DD)。 1-2 数据库分析 [任务2]:基于上面的任务背景描述,给出“网上考试系统”的数据库系统需求分析结果——数据字典(DD)。 表1 数据文件“考生”的字典条目 文件名:考生 别名:test_user 组成:{学号+姓名+班级+性别+所在系} 组织:按学号从小到大顺序排列 备注: 九江职业技术学院计算机教研室
1-2 数据库分析 表1-1 数据项“学号”的字典条目 数据项名:学号 别名:test_no 取值及含义: 入学级别:2000——2099 1-2 数据库分析 表1-1 数据项“学号”的字典条目 数据项名:学号 别名:test_no 取值及含义: 入学级别:2000——2099 系编号:01——06 专业编号:01——09 考生编号:0000——9999 备注:01代表机械系、02代表机电系、03代表电子系、…… 九江职业技术学院计算机教研室
1-2 数据库分析 表1-2 数据项“姓名”的字典条目(略) 表1-3 数据项“班级”的字典条目(略) 1-2 数据库分析 表1-2 数据项“姓名”的字典条目(略) 表1-3 数据项“班级”的字典条目(略) 表1-4 数据项“性别”的字典条目(略) 表1-5 数据项“所在系”的字典条目(略) 表2 数据文件“科目”的字典条目(略) 表3 数据文件“题库”的字典条目(略) 表4 数据文件“考试成绩”的字典条目(略) 表5 数据文件“考试设置”的字典条目(略) 表6 数据文件“管理员”的字典条目(略) 表7 数据文件“教师”的字典条目(略) 九江职业技术学院计算机教研室
小 结 1、 数据流图:任何软件从根本上来说,都是对数据进行加工的工具。数据流图反映了对数据加工的工序。 数据流图的四种基本图形符号: 小 结 1、 数据流图:任何软件从根本上来说,都是对数据进行加工的工具。数据流图反映了对数据加工的工序。 数据流图的四种基本图形符号: :表示加工 :表示数据的源点或终点 :表示数据的流向,数据名称标在箭头的边上 :表示数据文件或数据库 2、 数据字典:数据字典对软件中的每个数据规定一个定义条目,以保证数据在系统中的一致性。事实上数据字典统一给出了所有数据的定义与属性,这将为结构化分析过程提供数据建模的基础。 九江职业技术学院计算机教研室
工作任务2 数据库概要设计 九江职业技术学院计算机教研室
任务背景描述 前面针对“网上考试系统”功能,进行了简单的需求分析,重点分析了系统的工作流程及数据字典,至此,我们并没有确定该考试系统后台数据库的具体模型。所以,接下来将要进行了的是数据库的概要分析设计。 九江职业技术学院计算机教研室
2-1 数据库概要设计 设计人员仅从用户角度看待数据及处理要求和约束,产生一个反映用户观点的概念模型,然后再把概念模型转换成逻辑模型。当前主要采用基于E-R模型的数据库概念设计方法。 [任务3]:根据系统需求功能分析,为考生使用“网上考试系统”设计ER图。 图1 “考生”考试管理局部ER图 管理 考试设置 教师 管理员 九江职业技术学院计算机教研室
小 结 1. ER(实体-关系)图直观地描述了数据库中各种数据之间的关系,广泛应用于数据库的概念设计阶段。 小 结 1. ER(实体-关系)图直观地描述了数据库中各种数据之间的关系,广泛应用于数据库的概念设计阶段。 2. ER图的基本组成成分包含:实体型、属性和联系。 ① 实体型:用矩形框表示,框内标注实体名称。 ② 属性:用椭圆形框表示,框内标注属性名称。 ③ 联系:指实体之间的联系 3. 三种联系类型 ① 1:1 ② 1:N ③ M:N 九江职业技术学院计算机教研室
工作任务3 数据库的逻辑设计 九江职业技术学院计算机教研室
任务背景描述 前面我们已经完成了数据库的概要设计,并用ER图清楚地表达出了数据之间的关系。接下来,我们将要根据数据库逻辑设计的原则,将ER图转换成具体的关系型数据库,以便于在SQL SERVER上实现该数据库。 九江职业技术学院计算机教研室
3-1 数据库逻辑设计 [任务4]:将上面设计的ER图转换成“网上考试系统”数据库的关系模式。 以上“网上考试系统”数据库的关系模式设计如下: ① 考生信息表(考生学号、姓名、班级、性别、所在系) ② 考试科目表(科目编号、科目名称、学分、教师编号) ③ 考试成绩表(考生学号、科目编号、分数 ) ④ 试题库表(试题编号、科目编号、题型、题目、选项1、选项2、选项3、选项4、答案、标识 ) ⑤ 管理员表(管理员编号、姓名、密码) ⑥ 教师表(教师编号、姓名、性别、职称、专业名称、所在系) ⑦ 考试设置表(科目编号、科目名称、总分、选择题分值、填空题分值、判断题分值、考试时间、开始时间、结束时间、设置时间) 九江职业技术学院计算机教研室
小 结 概念设计中得到的E-R图是由实体、属性和联系组成的,而关系数据库逻辑设计的结果是一组关系模式的集合。所以将E-R图转换为关系模型实际上就是将实体、属性和联系转换成关系模式。 1、在转换中要遵循以下原则: (1) 一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。 (2) 一个联系转换为一个关系模式,与该联系相连的各实体的键以及联系的属性均转换为该关系的属性。对于1:1与1:n的联系在转换成关系时,该联系可并入到多方实体关系中去。 九江职业技术学院计算机教研室
小 结 2、该关系的键有三种情况: ① 如果联系为1:1,则每个实体的键都是关系的候选键; 小 结 2、该关系的键有三种情况: ① 如果联系为1:1,则每个实体的键都是关系的候选键; ② 如果联系为1: n ,则n端实体的键是关系的键; ③ 如果联系为n : m,则各实体键的组合是关系的键。 3、具体做法: (1) 把每一个实体转换为一个关系 首先分析各实体的属性,从中确定其主键,然后分别用关系模式表示。 (2) 把每一个联系转换为关系模式 由联系转换得到的关系模式的属性集中,包含两个发生联系的实体中的主键以及联系本身的属性,其候选码的确定与联系的类型有关。对于1:1与1:n的联系在转换成关系时,该联系可并入到多方实体关系中去。 九江职业技术学院计算机教研室
小 结 (3) 特殊情况的处理 三个或三个以上实体间的一个多元联系在转换为一个关系模式时,与该多元联系相连的各实体的主键及联系本身的属性均转换成为关系的属性,转换后所得到的关系的主键为各实体键的组合。 九江职业技术学院计算机教研室
总 结 基于E-R模型的数据库设计方法是由P.P.S.chen于1976年提出的数据库设计方法,其基本思想是在需求分析的基础上,用E-R(实体—联系)图构造一个反映现实世界实体之间联系的企业模式,然后再将此企业模式转换成基于某一特定的DBMS的概念模式 和其他软件一样,数据库的设计过程可以使用软件工程中的生存周期的概念来说明,称为“数据库设计的生存期”,它是指从数据库研制到不再使用它的整个时期。 九江职业技术学院计算机教研室
总 结 按规范设计法可将数据库设计分为六个阶段: (1)系统需求分析阶段 (2)概念结构设计阶段 (3)逻辑结构设计阶段 (4)物理设计阶段 总 结 按规范设计法可将数据库设计分为六个阶段: (1)系统需求分析阶段 (2)概念结构设计阶段 (3)逻辑结构设计阶段 (4)物理设计阶段 (5)数据库实施阶段 (6)数据库运行与维护阶段 九江职业技术学院计算机教研室