HEFEI UNIVERSITY
数据库设计报告
系 别
专 业
班 级
学 号
姓 名
指导 老师
完成 时间 电子信息与电气工程系 电气信息类 09级电气(3)班 20xx年5月10日
0905073012
学生信息管理理系统数据库设计报告 班级: 09电气信息类(3)班 姓名: 学号:0905073012
1.1设计背景:
随着我国学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。由于大学生类别和专业的设置的多样化,大学生的学籍管理历来是非常繁琐和复杂的的工作。在当代信息化的社会里,对信息管理也提出了更高的要求。面对庞大的信息量, 这时的人工管理几乎无法实现,在这种情况下用数据库进行管理变的尤为必要,它不仅实现了信息的共享,通过这样的系统,可以做到信息的规范管理,科学统计和快速的查询,从而增加管理方面的效率和减少人为的错误。
1.2内容和要求
1.2.1系统目标设计
? 使得学生的学籍管理工作更加清晰、条理化、自动化。
? 很容易地完成新生信息的输入、老生信息的备份、毕业学生的信息可以很容易地保存。
? 当学生需要查询成绩时,可以很简单地将其需要的信息从数据库中查找出来并可以打印查询结果。
? 随着当今网络技术的发展,提供网络在线查询功能,可以为毕业生提供更多的就业机会。
1.2.2系统功能要求
学生基本信息系统
? 能够完成新、老生信息的输人、修改、插人、删除等工作。
? 可以按照特定的信息进行查找,并按照特定的要求进行排序。
? 可以对老生的信息进行备份,以便日后查询。
? 可以对学生的信息进行打印输出。
? 提供详细的帮助文件和系统维护功能。
2 需求分析
本系统是针对高等院校的学生学籍管理,因此学籍管理系统的用户包括系统管理员、教师和学生。主要涉及系部信息、班级信息、任课教师信息、学生信息、课程信息以及选课记录和成绩等多种数据信息。
2.1 用户需求
实现的具体功能如下:
? 基本信息管理——系统管理员负责对各种基本信息的录入、修改、删除等操作。 ? 信息查询统计——学生可以查询基本信息和各科的考试成绩,老师可以查询基本
信息和授课信息,系统管理员负责把老师提交的学生成绩进行管理,计算总成绩和平均成绩,统计不及格学生信息和获得奖学金学生的信息,最后再输出所有的信息。
? 毕业生信息管理——系统管理员负责计算毕业学生在学校期间所修课程的总学
分,并进行审核,最后输出登记表和名册。
? 系统用户管理——系统管理员负责用不同的权限来限制不同用户对系统的使用。
以上是用户对系统的基本的功能要求,此外用户还要求系统的效率要高,查询速度要快,比较小的冗余,易维护,具有较高的数据安全性。
2.2 划分功能模块
根据系统功能的需求分析和高等院校学籍管理的特点,经过模块化的分析得到如下图1-1所示的系统功能模块结构图。
3 概念结构设计
3.1系统E-R图
对于学生信息管理,我们可以将学生实体抽象出来,学生属于学院可以将学院作为一个实体,学生所属专业可以作为一个实体。
在学生信息管理中存在这样的关系:选择(一个学生只能选择一个专业,而一个专业可以供多个学生选择,故是多对一的关系)、学习(一个学生只能在一个院系学习,而一个院系可以供多个学生学习,故是多对一的关系)
。
以上是本系统中的基本的实体和关系,本系统是将其分步找出来加以描述,下面是本系统总体的E-R图:
逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。
设计逻辑结构一般分为3步进行:
(1)将概念结构转换为一般的关系、网状、层次模型;
(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换; (3)对数据模型进行优化。
4.1 关系模型
将E-R图转换为关系模型实际上就是要奖实体型、实体的属性和实体型之间的联系转换为关系模式,这种转换一般遵循如下原则:一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体型间的联系则有以下不同的情况:
(1)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的个实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的侯选码。如果与某一端实体对应的关系模式合并,则需要在关系模式的属性中加入另一个关系模式的码和联系本身的属性。
(2)一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的个各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。
(3)一个m:n联系转换为一个关系模式。与该联系相连的个实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
(4)3个或3个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
(5)具有相同码的关系模式可合并。
将概念结构设计阶段设计好的基本E-R图转换为关系模型,如下所示:
? 学生(学号,姓名,家庭住址,性别,出生日期),此为学生实体的关系模式。 ? 院系(院系号,院系名称,系主任名),此为院系实体对应的关系模式。 ? 课程(学号,课程号,成绩),此为课程实体对应的关系模式。 ? 专业(专业号,专业名,入学时间),此为专业实体对应的关系模式。
4.2数据库结构
表 1 学生基本信息表
表 2 专业信息表
表 3 院系信息表
表 4课程信息表
5 物理结构设计与功能实现
5.1 物理结构设计
数据库的物理设计就是为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程。物理结构设计阶段实现的是数据库系统的内模式,它的质量直接决定了整个系统的性能。因此在确定数据库的存储结构和存取方法之前,对数据库系统所支持的事务要进行仔细分析,获得优化数据库物理设计的参数
数据库的物理设计通常分为两步:
(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存取结构; (2)对物理结构进行评价,评价的重点是时间和空间效率。
5.2 功能实现
(1)建立数据库
create database Student on
(name =order_dat,
filename ='c:\data\orderdat.mdf', size= 10, maxsize =50, filegrowth =5) log on
(name =order_log,
filename ='d:\log\orderlog.ldf', size=5MB,
maxsize =25MB, filegrowth =5MB)
2.建立表和数据完整性 create table 学生 (
学号 char(10) check(len(学号)=10 and isnumeric(学号)=1) primary key, 姓名 varchar(40) not null,
家庭住址 varchar(40),
性别 char(2),
出生日期 datatime
)
create table 院系
(
院系号 char(8) primary key check(unicode(产品号) between 65 and 122 and unicode(substring(产品号,2,1)) between 65 and 122) primary key, 院系名称 varchar(40) unique,
系主任名 varchar(40)
)
create table 课程
(
学号 char(10) foreign key references 学生(学号) not null,
课程号 char(8) primary key,
成绩 smallint
)
create table 专业
(
专业号 char(10) check(len(学号)=10 and isnumeric(学号)=1) primary key, 专业名 varchar(40) unique,
入学时间 datetime
)