石家庄科技信息职业学院
课程设计(实训)报告
系
部 _ 信息工程系___专
业 软件技术专业_
班
级 __09 级 23 班___学
薛 岳、康江伟
关晓松、侯少萌
名 __
__________ 课
姓
090123036、090123005、
090123021、090123026
号 ____________
题 学生学籍管理系统
指导教师 __ _侯丽霞_ ___报告成绩______________
日
期: 2011 年 6 月 23 日
摘
要
1.1 项目背景:
随着学校规模的不断扩大,学生数量也相应的增加,有关学生的各种信息量也成倍增加,
面对着庞大的信息量,传统的人工方式管理会导致学生信息管理上的混乱,人力与物力过多
浪费,信息管理费用的增加,从而使学校管理的负担过重,影响整个学校的运作和控制管理,
因此,必须制定一套合理、有效,规范和实用的学生信息管理系统,对图书资料进行集中统
一的管理。
另一方面,IT 产业和 Internet 获得了飞速发展,计算机应用已渗透到了各个领域,引
起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。提高学生管
理工作效率,作到信息的规范管理,科学统计和快速查询,让信息管理更好的为学校,社会
服务。
1.2 系统说明
本系统主要实现学生基本情况的录入、修改、删除等基本操作;对学生基本信息提供灵活的
查询方式;完成一个班级的学期选课功能;实现学生成绩的录入、修改、删除等基本操作;
能方便的对学生的个学期成绩进行查询;具有成绩统计、排名等功能;具有留级、休学等特
殊情况的处理功能;能输出常用的各种报表。具有数据备份和数据恢复功能
1.3 结论
通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理
解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对
灵据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R 图的表
示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,在实验中建表,及其关系
模式,关系代数的建立及理解,将 SQL 语的查询语句用得淋漓尽致,增强了自己在数据库中
应用 SQL 语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主
建与外主键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少
资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,独立
完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新。
目
录
一、 ………………………………………………………………页码
1.1………………………………………………………………页码
1.2………………………………………………………………页码
二、 ………………………………………………………………页码
2.1………………………………………………………………页码
2.2………………………………………………………………页码
前言
本系统采用目前应用最广泛也最成熟的 SQL 查询语言,在 SQL Server2008 上进行运行
和调试,在数据库设计过程中,对完整性约束进行了多次全面的分析和优化。
在对表的字段分析过程中,考虑到了人为输入的错误,某些字段采用从已知字段中截取
的方法,大大降低了人为输入的错误。
考虑到以后对表的修改,对本表的初始化过程中全部指定了字段进行初始化,以防将来
添加表字段时产生的麻烦。
考虑到将来对表的查找,由于 NULL 的特殊性,而且大部分字段又采用了国标码的
VARCHAR,对某些字段采用了默认值。
1.需求分析
正文
学生学籍管理系统需要完成功能主要有:
1) 实现学生基本情况的录入、修改、删除等基本操作。
2) 对学生基本信息提供灵活的查询方式。
3) 完成一个班级的学期选课功能。
4) 实现学生成绩的录入、修改、删除等基本操作。
5) 能方便的对学生的个学期成绩进行查询。
6) 具有成绩统计、排名等功能。
7) 具有留级、休学等特殊情况的处理功能。
8) 能输出常用的各种报表。
9) 具有数据备份和数据恢复功能。
2.事物需求
(1)在学生基本信息管理部分,要求:
a.可以查询学生信息。
b.可以对学生信息进行添加及删除的操作。
(2 )在选课信息管理部分,要求:
a.可以浏览选课信息。
b.可以对选课信息进行维护,包括添加及删除的操作。
(3)在学生成绩信息管理部分,要求:。
a.可以浏览学生成绩。
b.可以对学生成绩进行维护操作。
3.数据字典
表 2- 1 studentInformation 学生信息表
表中列名
number
name
ID
borndate
enterdate
college
subject
phone
数据类型
varchar
varchar
char
datetime
datetime
varchar
varchar
varchar
isnull
not null(主键)
not null
not null
not null
not null
not null
not null
null
说明
学号
姓名
身份证号码
出生时间
入学时间
所在学院
所在专业
联系电话
表中列名
name
number
year
term
course
score
credit
point
CourseNumber
表中列名
number
name
course
CourseNumber
teacher
clasroom
classTime
nature
表 2- 2 scoreSearch 成绩查询表
数据类型
varchar
varchar
varchar
varchar
varchar
varchar
varchar
varchar
varchar
可否为空
not null
not null(外键)
not null
not null
not null
not null
not null
not null
not null
表 2- 3 studentCourse 学生课程表
数据类型
varchar
varchar
varchar
varchar
varchar
varchar
varchar
varchar
可否为空
not null(外键)
not null
not null
not null
not null
not null
not null
not null
课程号说明:高数 0901 英语 0902 计算机基础 0903 动画制作 0904
表中列名
number
name
course
CourseNumber
teacher
grade
表中列名
number
表 2- 4 courseEvaluate 课程评估表
数据类型
varchar
varchar
varchar
varchar
varchar
varchar
Is null
not null(外键)
not null
not null
not null
not null
not null
表 2- 5 courseSelect 选课表
Is null
数据类型
varchar
not null(外键)
说明
学生姓名
学生学号
学年
学期
课程
成绩
学分
绩点
课程号
说明
学生学号
学生姓名
课程
课程号
教师
教室
上课时间
性质
说明
学生学号
学生姓名
课程
课程号
教师
等级
说明
学生学号
name
course
CourseNumber
teacher
classTime
classroom
4.关系模式
varchar
varchar
varchar
varchar
varchar
varchar
not null
not null
Is null
not null
not null
not null
学生姓名
课程
课程号
教师
上课时间
教室
一.学生信息(学号,姓名,身份证号码,出生时间,入学时间,所在学院,联系电话,所
在专业)
二.成绩查询(学生姓名,学生学号,学年,学期,课程,成绩,学分,绩点,课程号)
三.学生课程(学生学号,学生姓名,课程,课程号,教师,教室,上课时间,性质)
四.课程评估(学生学号,学生姓名,课程,课程号,等级,教师)
五.选课(学生学号,学生姓名,课程,课程号,教室,上课时间,教师)
六.网上报名(学生学号,学生姓名,项目,缴费地点,报名时间,截止时间)
5.E-R 图
根据 1)所要实现的功能设计,可能建立它们之间的关系,进而实现逻辑结构功能。
学生学籍管理系统可以划分的实体有:学生信息实体、成绩查询实体、学生课程实体、课程
评估实体,选课实体,网上报名实体。用 E-R 图一一描述这些实体。
5.1 学生信息实体 E-R 图:
联系电话
所在专业
姓名
学号
学生信息实体
身份证号码
所在学院
出生时间
入学时间
图 3- 1 学生信息实体 E-R 图
5.2 成绩查询实体 E-R 图:
学生学号
学生姓名
成绩查询信息实体
学年
课程号
绩点
学分
成绩
学期
课程
图 3- 2 成绩查询信息实体 E-R 图
5.3 学生课程实体 E-R 图:
课程号
性质
学生学号
学生姓名
学生课程信息实体
教师
上课时间
教室
课程
图 3- 3 学生课程信息实体 E-R 图
5.4 课程评估实体 E-R 图:
学生学号
学生姓名
教师
课 程 评 估 信 息 实 体
实体
等级
课程号
课程
图 3- 4 课程评估信息实体 E-R 图
5.5 选课实体 E-R 图:
课程号
学生学号
学生姓名
选课信息实体
教师
上课时间
教室
课程
图 3- 5 选课信息实体 E-R 图
6 数据库建立物理实现
6.1创建主数据文件,附数据文件,以及日志文件
create database stuManguage
on primary