信息管理系统毕业设计文档格式.docx
《信息管理系统毕业设计文档格式.docx》由会员分享,可在线阅读,更多相关《信息管理系统毕业设计文档格式.docx(16页珍藏版)》请在冰点文库上搜索。
拥有最高的权限。
允许添加教师信息和课程信息等。
其提供了简单、方便的操作。
3概要设计
3.1功能模块图
功能模块图,如下图3.1所示
学生信息管理系统
学生基本信息
班级基本信息
管理员基本信息
学生成绩信息
课程基本信息
教师基本信息
图3.1功能模块图
3.2数据流图
数据流图,如图3.2所示
图3.2数据流程图
4数据库设计
4.1实体及其属性
(1)学生实体及其属性,如下图4.1所示
图4.1学生实体
(2)教师实体及其属性,如图4.2所示
图4.2教师实体
(3)管理员实体及其属性,如图4.3所示
图4.3管理员实体
(4)课程实体及其属性,如图4.4所示
图4.4课程实体
(5)班级实体及其属性,如图4.5所示
图4.5班级实体
(6)成绩实体及其属性,如图4.6所示
成绩
课程号
学号
门人数
图4.6成绩实体
4.2局部E-R图
4.2.1学生-班级局部E-R图
学生-班级局部E-R图如下图4.7所示:
图4.7学生-班级局部E-R图
4.2.2教师-课程局部E-R图
教师-课程局部E-R图如下图4.8所示:
图4.8教师-课程局部E-R图
4.2.3学生-课程局部E-R图
学生-课程局部E-R图如下图4.9所示:
图4.9学生-课程局部E-R图
4.3全局E-R图
全局E-R图,如图4.10所示
管理员
登陆密码
管理员ID
勤编号
图4.10全局E-R图
4.4关系表
教师信息表如下表4-1所示:
表4-1教师信息表
字段名
类型
空值
约束条件
教师ID
varchar(8)
notnull
主键
教师姓名
登录密码
课程信息表如下表4-2所示:
表4-2课程信息表
varchar(8)
课程名称
varchar(12)
外键
班级信息表如下表4-3所示:
表4-3班级信息表
班级号
班级名称
所属学院
varchar(6)
班级人数
nchar(4)
管理员信息表下表4-4所示:
表4-4管理员信息表
varchar(10)
varchar(10)
成绩信息表下表4-5所示:
表4-5成绩信息表
varchar(15)
主键,外键
smallint
学籍信息下表4-6所示:
表4-6学籍信息表
int
姓名
varchar(30)
性别
char
(2)
籍贯
char(10)
money
5关键技术实现
5.1创建数据库
创建数据库,如下图5.1所示
图5.1创建数据库
5.2创建基本表
5.2.1教师信息表创建
createtable教师信息表(
教师IDvarchar(8)primarykey,
教师姓名varchar(8)notnullunique,
登录密码varchar(8)notnull,
)
5.2.2课程信息表创建
createtable课程信息表(
课程号varchar(8)primarykey,
课程名称varchar(12)notnull,
教师IDvarchar(8)notnull
foreignkey(教师ID)references教师信息表(教师ID)
5.2.3班级信息表创建
createtable班级信息表(
班级号varchar(8)notnullprimarykey,
班级名称varchar(8)notnullunique,
所属学院varchar(8),
班级人数nchar(4)
5.2.4学籍信息表创建
createtable学籍信息表(
学号varchar(15)primarykey,
姓名varchar(8)notnull,
性别varchar(4),
班级号varchar(8)notnull,
籍贯varchar(5),
登录密码varchar(6)notnull
foreignkey(班级号)references班级信息表(班级号)
5.2.5成绩信息表创建
createtable成绩信息表(
学号varchar(15),
课程号varchar(8),
成绩smallint
primarykey(学号,课程号)
foreignkey(学号)references学籍信息表(学号),
foreignkey(课程号)references课程信息表(课程号)
5.2.6管理员信息表创建
管理员IDvarchar(8)primarykey,
登录密码varchar(12)notnull
5.3视图的创建
5.3.1“教师课程详细信息”视图创建
createview教师课程详细信息
as
SELECT教师信息表.教师ID,教师信息表.教师姓名,课程信息表.课程号,课程信息表.课程名称,
教师信息表.登录密码
FROM教师信息表
JOIN课程信息表ON教师信息表.教师ID=课程信息表.教师ID
视图创建结束的结果图如下图5.2所示:
图5.2教师详细信息视图
5.3.2“学生成绩信息”视图创建
createview学生成绩信息
SELECT学籍信息表.学号,学籍信息表.姓名,学籍信息表.性别,
课程信息表.课程名称,成绩信息表.成绩
FROM成绩信息表
JOIN学籍信息表ON成绩信息表.学号=学籍信息表.学号
JOIN班级信息表ON班级信息表.班级号=学籍信息表.班级号
JOIN课程信息表ON课程信息表.课程号=成绩信息表.课程号
学生成绩信息视图创建结束的结果图如下图5.3所示:
图5.3学生成绩信息视图
5.4存储过程创建
5.4.1“单科成绩排名”创建
createproc[dbo].[单科成绩排名]
@kechennamechar(8),
@classnamechar(8)
select学籍信息表.学号,姓名,成绩
from成绩信息表
join课程信息表on课程信息表.课程号=成绩信息表.课程号
join学籍信息表on学籍信息表.学号=成绩信息表.学号
join班级信息表on班级信息表.班级号=学籍信息表.班级号
where课程名称=@kechennameand班级名称=@classname
orderby成绩desc
5.4.2“全班排名”创建
createproc[dbo].[全班排名]
@classchar(8)
select学籍信息表.学号,姓名,avg(成绩)as平均分,sum(成绩)as总分
join学籍信息表on成绩信息表.学号=学籍信息表.学号
join班级信息表on班级信息表.班级号=学籍信息表.班级号
where班级信息表.班级名称=@class
groupby学籍信息表.姓名,学籍信息表.学号
orderbyavg(成绩)desc,学籍信息表.学号
5.5触发器创建
5.5.1创建教师信息表-课程信息表之间的触发器。
创建触发器,使教师中某教师信息修改后,相应的在课程信息表中也要将相应教师的信息修改。
创建触发器如下图5.4所示:
图5.4教师信息表-课程信息表之间的触发器
5.5.2创建成绩信息表的触发器
为成绩信息表创建触发器,使得成绩在0-100分之间。
创建过程如下图5.5所示
图5.5在成绩信息表创建触发器
如下图5.6中在成绩信息表中插入两条信息
图5.6在成绩信息表中插入两条子信息
5.6数据库的备份和恢复
5.6.1数据库备份
数据库的备份信息如下图5.7所示
BACKUPDATABASEstudentTODISK=N'
f:
\cm\Staff.bak'
图5.7数据库备份
5.6.2数据库还原
数据库的还原如下图5.8所示
RESTOREDATABASEstudentFROMdisk=N'
图5.8数据库还原
6数据库安全性控制
新建两个数据库用户madmin和cai,manager用户能够查看和删除student数据库中的学生信息,而Writer用户能够插入和更新student数据库的学生信息。
用户madmin的权限如下图6.1所示,用户cai的权限如下图6.2所示
图6.1用户madmin的权限
图6.2用户cai的权限
7总结与展望
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。
本次课程设计虽然很辛苦,实在是受益匪浅。
本来这门课的知识学的就不够扎实,本次课程设计,在设计过程中碰到了很多问题,刚开始要设计的时候,还真不知道从哪里下手但最终在图书、同学和老师的帮助下都得到了解决,让我学会了好多书本上没有的东西,通过本次课程设计我也能将课本上的知识融会贯通,起到了很好的辅助学习的效果,但是我发现我学到的知识比整整一个学期学到的都多。
理论和实践的相结合是学习最有效的方法。
在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。