当前位置:文档之家› 数据库课程设计指导书讲解

数据库课程设计指导书讲解

《数据库原理与应用》课程设计指导书制订教师:张娟城市学院2015年12月数据库课程设计指导书模块01 “教学管理系统”数据库设计1、设计步骤工作任务 任务1:“学分制教学管理系统”需求分析 任务2:“学分制教学管理系统”概念设计 任务3:“学分制教学管理系统”逻辑设计 任务4:“学分制教学管理系统”逻辑设计 学习目标理解关系型数据库基本概念熟悉数据库设计的主要阶段和步骤掌握数据库概念设计中绘制E-R 图的方法 掌握将E-R 图转换为数据表逻辑形式的方法 理解并掌握数据库设计规范化方法2、设计内容任务1-1 “学分制教学管理系统”需求分析● 数据库设计●数据库系统的分析与设计一般分为需求分析、概念设计、逻辑设计、物理设计四个阶段。

在数据库系统设计的整个过程中,需求分析和概念设计可以独立于任何的数据库管理系统(DBMS ),而逻辑设计和物理设计则与具体的数据库管理系统密切相关。

需求分析概念设计逻辑设计物理设计需求分析说明书独立于数据库管理系统相关于数据库管理系统DBMS 的特征硬件和操作系统的特征数据库概念模式数据库逻辑模式数据库物理模式需求分析分析用户的要求。

需求分析是数据库系统设计的基础,通过调查和分析,了解用户的信息需求和处理需求,并以数据流图、数据字典等形式加以描述。

概念设计主要是把需求分析阶段得到的用户需求抽象化为概念模型。

概念设计是数据库系统设计的关键,我们将使用E-R 模型作为概念模式设计的工具。

逻辑设计就是将概念设计阶段产生的概念模式转换为逻辑模式。

因为逻辑设计与数据库管理系统(DBMS )密切相关,本书以关系模型和关系数据库管理系统为基础讨论逻辑设计。

物理设计就是为关系模型选择合适的存取方法和存储结构,譬如MS SQL Server 2005数据库管理系统。

教学管理流程课程信息选课情况人数未满人数 已满成绩处理成绩查询统计报表教师信息学生信息学生登录学生网上课程选修课程开设教师登录重选实施教学教师网上录入成绩系统功能结构学分制教学管理系统课程管理人员管理系统登录信息查询统计报表班级管理网上选课成绩录入系部信息维护专业信息维护班级信息维护学生信息维护教师信息维护课程信息维护任课信息维护学生成绩查询学生信息查询教师信息查询班级成绩报表学业警告报表新增更新删除学生系统登录教师系统登录管理人员登录系统登录从“学分制教学管理系统”的流程图可以看出,学生要登录系统进行课程选修和个人成绩查询等操作;教师要登录系统进行课程成绩录入和课程成绩查询等操作;学校教学管理人员要登录系统进行系部、专业、班级、课程等信息维护等操作。

班级管理由于班级涉及到系部和专业信息,所以该模块包含了系部和专业信息维护子模块,涉及到这些信息的新增、更新和删除功能。

人员管理人员管理主要是学生、教师和系统角色的信息维护,涉及到这些信息的新增、更新和删除功能。

课程管理课程管理主要是课程信息的维护和课程教学任务分配(课程班),也涉及到这些信息的新增、更新和删除功能。

学期课程教学任务分配后,形成不同的“课程班”,可以让学生进行网上课程选修。

网上选课学生用学号登录系统后,进入课程选修界面,如图1-7所示。

同学们按照学校的规定并根据自己的实际情况,勾选自己喜欢的课程,单击图中的【选修确认】按钮,即可完成相应学期的课程选修。

成绩录入根据学生课程选修情况,绝大部分选修人数超过20人的课程开始进行课程教学,教师可以登录到系统中查询“课程班”学生名单,期末课程进行考试考核。

随后,教师登录到系统中录入平时、期中和期末成绩,并由系统自动计算出课程总成绩。

考试完两周后,由教务处管理人员将成绩锁定,教师只能查询,不能再做修改。

信息查询信息查询主要是指学生自己入学以来的成绩查询,教学管理人员对学生和教师的信息查询,和任课教师对班级名单的查询。

统计报表统计报表主要是指学期结束后,教学管理人员需要每个班级学生的成绩单,用以寄送给学生父母。

另外,教学管理人员还要对学期学分未修满该得学分60%的学生提出学业警告,所以还需要系统给出这些学生的报表。

任务1-2 “学分制教学管理系统”概念设计E-R 图是数据库设计的第二个阶段,即“概念设计”阶段的图形化表达方式。

在前面的需求分析的基础上,要求同学绘制出 “学分制教学管理系统”的E-R 图,然后与教务处及系部教学管理人员、教师、学生等进行沟通,讨论设计的数据库概念设计是否符合用户的需求。

明确实体并标识实体属性“学分制教学管理系统”数据库中需要的对象或实体为:学生、教师、系部、专业、班级、课程、成绩。

每个对象的具体属性如下:学生:学号、姓名、入学及毕业年份、系部、专业、班级、性别、年龄、出生日期、联系地址、邮编、密码。

教师:教工号、姓名、所在系部、性别、年龄、出生日期、职称、密码、是否管理员。

系部:系部编码、系部名称、专业名称、系部简介。

班级:班级编码、班级名称、系部、系部开设时间、班主任。

课程:课程编码、课程名称、系部、课时、学分、课程描述。

成绩:学号、课程、班级、平时成绩、期中成绩、期末成绩、总成绩、补考成绩、课程学分、锁定标志。

系部学生班级姓名性别学号出生日期地址编码名称班级系部班级编码系部开设时间系部教师职称姓名性别教工号出生日期密码密码邮编系部编码系部专业名称年龄入学及毕业年份年龄角色系部简介班主任系部名称标识实体间关系关系模型数据库中每个对象并非孤立的,它们是相互关联的。

在设计数据库时,要标识出对象之间的关系。

◆ 学生与班级、系部有从属关系。

即学生从属于班级,班级从属于系部。

◆ 教师与系部有从属关系。

即教师从属于系部。

◆ 课程与系部有从属关系。

即课程从属于系部。

◆ 成绩与学生、课程有从属关系。

即成绩既从属于学生,也从属于课程。

◆ 学生与课程存在关系,即每个学期,每个学生根据自己的实际情况,要选择课程学习。

◆ 教师与课程存在关系,即每个学期,根据教师的实际情况,系部管理者要分配教学任务(课程)给每个教师,实施教学。

标识实体间关系 学生教师成绩班级课程系部组成组成组成考试1N1N1N任课取得1N1NMN选修MN任务1-3 “学分制教学管理系统”逻辑设计要从设计好的系统E-R 图概念设计模型导出系统的逻辑设计模型,包括所有的数据表,每个表的所有列,主外键定义等,并且所有命名必须符合规范, E-R 图转换为数据表将E-R 图转换为表格的步骤如下: 实体映射成表 标识主键字段 确定外键字段 ① 1:N 关系 ② M:N 关系 确定普通字段根据E-R 图中实体的属性,以及该属性在系统中信息表达的具体要求,映射成实体所对应数据表的字段,并明确字段的名称、数据类型、长度、是否为空、默认值等。

外键① 1:N 关系 外键(Forgeign Key )关系体现了实体之间的“1对多”关系,构成了主从表关系,主外键关系主要是用来维护两个表之间的数据一致性,是一种约束关系。

可以通过在从表中增加一个字段(对应主表中的主键)作为外键。

例如,班级与学生是一对多的关系,学生表中需要一个表示学生【班级】属性的字段,只要将班级表中的主键【班级编码】字段设置到学生表中作为外键即可。

② M:N 关系多对多关系。

这时应该将多对多关系映射成一张新表,这张表应包括两个多对多关联实体表的所有主键字段,这两个主键的所有字段成为新表的主键。

例如,学生与课程的关系(学生选课)是多对多关系,此时应该将“学生选课”这个多对多关系映射成一张新表。

对象类型命名规则前缀范例备注数据库名DB_英文名DB_ DB_TeachingSystem有意义的英文单词连接在一起首字母大写表名TB_英文名TB_ TB_Student字段名英文名(帕斯卡法)䦋㌌㏒㧀좈໱琰茞ᓀ㵂ÜCourseName视图名VW_英文名VW_ VW_Student主键PK_表名_列名PK_ PK_CourseID多列用_隔开外键FK_表名_列名FK_ FK_CourseID检查约束CK_表名_列名CK_ CK_CourseID唯一约束UK_表名_列名UK_ UK_CourseName默认值DEF_表名_列名DEF_ DEF_CourseGrade索引IX_表名_列名IX_ IX_CourseName存储过程SP_英文名SP_ SP_GradeProcess有意义的英文多个单词一起首字母大写触发器TR_英文名TR_ TR_SelectCourse游标CUR_英文名CUR_ CUR_Student局部变量@英文名@ @CourseID②构建逻辑模型实体映射成表及主键②构建逻辑模型确定外键字段从下面系统E-R模型图可以看出,存在实体【教师】与【课程】和【学生】与【课程】间两个“多对多”的关系,根据前面相关知识描述,应该将每个“多对多”关系映射成一张新表,变成两个“一对多”关系。

用一个新的实体【课程班】来表征实体【教师】与【课程】之间“多对多”的“任课”关系,从而构成【教师】与【课程班】和【课程】与【课程班】之间的两个“一对多”关系,如下图所示。

实体【学生】与【课程】间的“多对多”关系系部1M班级组成组成1N 1教师课程N 任课1课程班组成1N N 1同样,学生的“选课信息”需要在系统数据库中记录下来,“选课信息”的记录的相关内容如下表所示。

因此,第一项目小组考虑用一个新的实体【选课信息】来表征实体【学生】与【课程班】间的“多对多”关系,完成各表的逻辑设计系部信息表学生教师成绩课程系部组成考试1N任课取得1N1N 1N课程班组成1N N1选课信息组成组成1N班级组成组成1N 1N 最大数已选数课程班编码学期教学时间 学年教学地点期中比例期末比例平时比例选满标志学号选课信息课程班编码选课日期教师信息表班级信息表学生信息表课程信息表课程班信息表选课信息表成绩信息表任务1-4 “教学管理系统”数据库设计规范化数据库逻辑设计文档评审检查要求。

3、设计要点本模块详细介绍了关系型数据库的设计方法与步骤,结合“学分制教学管理系统”重点阐述了数据库设计的三个阶段,即需求分析、概念设计、逻辑设计阶段。

与之相关的关键知识点主要有:●数据库系统的3种模型结构:层次模型、网状模型和关系模型。

●关系型数据库的4个设计阶段:需求分析、概念设计、逻辑设计和物理设计。

●数据库系统设计的3个特点:反复性、试探性和分步进行。

●实体-关系(E-R)模型,实体和属性的概念,实体间的关系形式:一对一关系、一对多关系和多对多关系,同时介绍了E-R图的绘制方法。

●与关系(数据表)相关的一些概念,如记录、字段、主键、外键。

●实体E-R图转换成数据表逻辑结构的方法与步骤。

●字段的数据类型和一些其它相关属性,如默认值和为空性等。

●数据库设计的命名规范。

●数据库设计的范式理论,重点是第一范式、第二范式和第三范式。

相关主题