数据库课程设计报告 (2)
- 格式:doc
- 大小:198.50 KB
- 文档页数:14
. 数据库原理与应用
课程设计报告
题目:学生成绩管理系统
学校:
专业班级:
学生姓名:
学号:
指导教师:
2012年12 月
一概述
1.1目的与要求
随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。该课程设计要求设计一个学生成绩的数据库管理系统,数据库中要求包含学生的基本信息,学科基本信息,以及学生所学课程的考试成绩。要方便学生进行成绩查询,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。
1.2设计环境
Microsoft SQL Server 2005
二需求分析
1.1信息需求
高校学生的成绩管理工作量大、繁杂,人工处理非常困难。学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、
更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。
1.2数据需求
能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时
间要短。
1.3功能需求
具体功能应包括:系统应该提供课程安排数据的插入、删除、更新、查询;成绩的添加、修改、删除、查询,学生基本信息查询的功能。
1.4安全性与完整性要求
需求分析内容:
①一个学生可以选修多门课程,一门课程可供多名学生选修;一个学生选修一门课
程会有一个成绩。
②一个教师教授多门课程,一门课程由一名教师教授。
2.数据流图
3.数据字典
数据项是数据库的关系中不可再分的数据单位,以下分别列出了数据的名称、数据类型、长度、取值能否为空。利用SQL Server 2005建立“学生选课”数据库,其基本表清单及表结构描述如下:
1)课程信息(course):
|课程号(cno) char(10) primary key 定义为主键
|课程名cname) char(10) 非空
|课时(hour) char(10) 非空
| 学分(credit)char(4) 非空
2学生信息(student):
|学号(sno) char(10) primary key 定义主键
|姓名(sname) char(10) 非空
|性别(ssex)char(2) 非空
|年龄(sage) char(2) 非空
|专业(smajor) char(10) 非空
|系别(sdepart) char(10) 非空
3)成绩信息(score ):
|学号(sno) char(10) primary key 定义主键
|课程号(cno)char(10) 非空
|成绩(degree)char(10) 非空
|课程名( cname)char(10) 非空
三概念结构设计阶段
概念结构设计阶段是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
1.数据库的局部E-R图
学生信息表
. 课程信息图
成绩图
2.数据库完整E-R图
四逻辑结构设计阶段
E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。
设计学生成绩管理数据库,包括课程、学生、成绩三个关系, 其关系模式中
对每个实体定义的属性如下:
课程信息表:(课程号,课程名,教师号,学分)
此为联系“课程信息表”所对应的关系模式。课程名为该关系的候选码。
学生信息表:(学号,姓名,性别,年龄,专业,系别)
此为联系“学生信息表”所对应的关系模式。学号为该关系的候选码。
成绩表:(学号,课程号,课程名,成绩)
此为联系“输入”所对应的关系模式。题目编号、管理号为该关系的候选码数据库中包含3个表,即课程信息(course),学生信息(student ),成绩信息(score )。
数据库中用到的表:
score情况数据表,结构如下:
五数据库的物理设计
数据库物理设计的任务是为上一阶段得到的数据库逻辑模式,即数据库的逻辑结构选择合适的应用环境的物理结构,既确定有效地实现逻辑结构模式的数据库存储模式,确定在物理设备上所采用的存储结构和存取方法,然后对该存储模式进行性能评价、修改设计,经过多次反复,最后得到一个性能较好的存储模式。数据库物理设计内容包括记录存储结构的设计,存储路径的设计。
1.系统结构设计
1.1系统功能模块
六数据库实施
创建数据库
create database STUDENT
创建表
在此学生成绩管理系统中需要创建三个表,即课程信息表、学生信息表和成绩表。
创建数据库后,为STUDENT数据库添加数据表,步骤如下。
(1)新建查询窗口
(2)在查询窗口中键入下列SQL语句
create table course(
cno char(10) primary key,