SQL数据库学生信息管理系统课程设计报告文档格式.docx
《SQL数据库学生信息管理系统课程设计报告文档格式.docx》由会员分享,可在线阅读,更多相关《SQL数据库学生信息管理系统课程设计报告文档格式.docx(29页珍藏版)》请在冰豆网上搜索。
黔南民族师范学院学生管理系统主要根据全院全体学生信息需求来设计开发,主要是对学生的基本信息及情况作统一的管理,使老师更加容易掌握学生的基本信息及情况以及学生本人更加的了解自己的基本信息,学生的基本属性包括(学生学号、姓名、性别、出生年月、民族、籍贯、政治面貌)。
该系统主要用户教师和学生本人,但是主要控制由系统管理员,因此,系统主要对学生和教师开放,具体的功能需求分析如下:
1、系统管理员对功能的需求:
系统管理员的在所有用户中的权力最大,具有系统所有的功能,首先可以对教师的一栏的所有功能都可以进行操作,可以对教师的信息进行修改、查询、添加、浏览、删除等操作,还可以对系统进行维护等功能。
其次是对学生基本信息的管理功能,可以实现老师对学生所有操作的功能,即可以对学生的基本信息进行浏览、修改、查询、添加、删除等等。
可以说,系统管理员是这个系统的大脑,而其他的就是这个系统的肢体等组成部分,所有管理员最具有权威性的。
具体功能分析如下:
(1)学生基本信息管理
系统管理员对学生的基本信息进行统一的管理,对全体学生信息有进行浏览、查询、添加和删除等功能。
a、浏览学生的基本信息
b、查询学生的基本信息
c、添加学生的基本信息
d、修改学生的基本信息
e、删除学生的基本信息
(2)选课信息管理
系统管理员可以对学生的选课信息进行管理,可以对学生选课信息进行浏览、查询、修改、删除等功能,
a、浏览学生选课信息
b、查询学生选课信息
c、修改学生选课信息
d、删除学生选课信息
(3)专业情况管理
系统管理员可以对学生管理系统的学生专业情况进行浏览、查询等功能
a、浏览学生专业情况信息
b、查询学生专业情况信息
c、添加学生专业情况信息
d、修改学生专业情况信息
e、删除学生专业情况信息
(4)住宿信息管理
系统管理员还可以对学生的住宿情况进行浏览、查询、修改、添加、删除等功能。
a、浏览学生住宿信息
b、查询学生住宿信息
c、修改学生住宿信息
d、添加学生住宿信息
e、删除学生住宿信息
(5)系统的维护
系统管理员登陆系统后,可以对教师以及学生等用户信息进行修改,通过修改用户信息从而实现对系统安全性的管理,通过统一管理用户的基本信息对系统进行维护。
a、浏览用户信息
b、添加用户信息
c、修改用户信息
d、删除用户信息
1.2.2、系统模块设计:
1.2.3、数据流图与数据字典及E—R图
图2-1学生信息管理系统的顶层图
(1)用户信息描述
数据流
用户信息
数据流来源
SQLServer2000数据库中用户信息表
数据去向
用户管理页面
数据流组成
用户名、用户密码
实体用户信息E—R图
(2)学生表S:
以学号为主键,组成有:
学号、姓名、性别、出生年月、民族,籍贯,政治面貌
学生信息
SQLServer2005数据库中学生基本信息表
学生信息管理页面
学生学号、姓名、性别、出生年月、,民族,籍贯,政治面貌
实体学生信息E—R图
(3)选课信息描述:
以课程号为主键,组成有:
课程号,课程名,授课老师,学分
学生选课信息
SQLServer2005数据库中选课表
课程信息管理页面
课程号、课程名,学分,授课老师
实体选课信息E—R图
(4)SC表的描述
学生表S和课程表C的中间关系表SC,学生与选课时多对多的关系转换为一对多的关系,在中间表SC中,设学号和课程号为主键,对S表来说,学号是外键,对C表来说,课程号是外键。
SC信息
SQLServer2005数据库中课程表、选课表
学生、课程信息管理页面
学号、课程号、成绩、备注
实体SC表E—R图
(5)专业情况M表描述:
设置专业号为主键,组成有:
专业号,专业,院系
专业情况M信息
SQLServer2005数据库中专业情况表
专业情况管理页面
专业号、专业、院系
实体专业情况E—R图
(6)SM表描述
以学号为外键记录学生在校的情况表SM,设学号为主键,组成有:
学号、专业号、入学时间、班级、铺导员
SM信息
SQLServer2005数据库中学生表、专业情况表
学生、专业情况管理页面
学号、专业号、入选时间、班级、铺导员
SM表E—R图
(7)学生住宿R表描述
以宿舍楼号为主键:
组成有:
楼号、寝室号
学生住宿R信息
SQLServer2005数据库中住宿表
住宿情况管理页面
实体宿舍楼E—R图
(8)Sr表描述
以学生学号和楼号为主键,组成有:
学生学号、楼号、寝室人数、备注
SR信息
SQLServer2005数据库中学生表、住宿表
SR表E—R图
总E—R图:
2、逻辑结构设计:
a、学生表(学生学号、姓名、性别、出生年月、,民族,籍贯,政治面貌)
b、选课表(课程号、课程名,学分,授课老师)
c、SC表(学生学号、课程号、成绩、备注)
d、专业情况M表(专业号、专业、院系)
e、SM表(学号、专业号、入选时间、班级、铺导员)
f、学生住宿变R(楼号、寝室号)
g、Sr表(学生学号、楼号、寝室人数,备注)
3、数据库的实现
A、学生表
列名
数据类型
长度
是否为空
说明
学号
char
12
否
主码
姓名
10
性别
2
民族
是
籍贯
100
出生年月
datetime
政治面貌
1、建立学生表语句:
CREATETABLEstudent(
学号char(12)constraintfirstkeyprimarykeynotnull,
姓名char(10)notnull,
性别char
(2)notnull,
出生年月datetime,
民族char(10),
籍贯char(100),
政治面貌char(10),
);
B、选课表
课程号
课程名
40
授课老师
学分
2、建立选课表语句:
CREATETABLEcourse(
课程号char(10)primarykeynotnull,
课程名char(40)notnull,
授课老师char(10),
学分char
(2),
)
C、SC表
成绩
3
备注
20
补考/过关
3、建立SC表语句:
CREATETABLEsc(
学号char(12),
课程号char(10),
成绩smallint,
备注char(20),
primarykey(学号,课程号),
foreignkey(学号)referencesstudent(学号),
foreignkey(课程号)referencescourse(课程号),
D、专业情况M表
专业号
专业
院系
4、建立专业情况表M语句:
CREATETABLEM(
专业号char(10)primarykeynotnull,
专业char(20),
院系char(20),
E、SM表
入学时间
15
班级
铺导员
5、建立SM表语句:
CREATETABLESM(
专业号char(10),
入学时间char(15),
班级char(15),
铺导员char(10),
primarykey(学号,专业号),
foreignkey(专业号)referencesM(专业号),
F、住宿表R
楼号
寝室号
6、建立住宿情况表R语句:
createtableR(
楼号char(10)primarykey,
寝室号char(10),
G、sr表
寝室人数
createtablesr(
楼号 char(10),
寝室人数 char(10),
primarykey(学号,楼号),
foreignkey(楼号)referencesr(楼号),
4、数据初始化
(1)将学生信息加入到学生表(student)中
insertintostudent
values('
2008081401'
'
王寰'
男'
1949-1-10'
汉族'
福建省'
共青团员'
2008081402'
鱼猛刚'
1989-3-8'
贵州贵阳'
预备党员'
2008081403'
脏嗨啵'
1989-4-22'
苗族'
贵州瓮安'
2008081404'
小黑'
2001-11-10'
水族'
贵州织金'
2008081405'
豌豆'
女'
1989-5-16'
天上人间'
2008081406'
王娇'
1988-2-20'
梦幻国度'
2008081407'
小Y'
1989-4-14'
外太空'
2008081408'
张导'
1989-11-11'
藏族'
火星'
2008081411'
小七'
1988-11-5'
贵州赤水'
(2)将选课信息加入表course中:
insertintocourse
1010'
运筹学'
罗刚老师'
4'
1011'
web'
钟志宏老师'
1012'
SQL数据库'
习慧丹老师'
2'
1013'
管理统计学'
李泽平老师'
1014'
电子商务'
胡洋老师'
1015'
计算机组装与维修'
周立军老师'
1016'
计算机网络'
石云辉老师'
1017'
财务管理'
唐颖'
1018'
操作系统'
黄隽老师'
(3)将相关数据加入表sc表中:
insertintosc
85'
过关'
56'
补考'
73'
62'
55'
71'
86'
64'
43'
72'
80'
(4)将相关数据加入表专业情况表(M)表中:
insertintoM
NO.1'
信息管理与信息系统'
黔南师院计科系'
NO.2'
计算机科学与应用'
(5)将相关数据加入表SM表中:
insertintosm
2008-9-1'
信息管理与信息系统
(1)班'
李涛'
计算机科学与应用
(2)班'
信息管理与信息系统
(2)班'
计算机科学与应用
(1)班'
(6)将相关数据加入表r表中:
insertintor
6#'
306'
13#'
203'
(7)将相关数据加入表sr表中:
insertintosr
6'
850住宿费/年'
1150住宿费/年'
5、视图、索引的实现
1、视图的建立:
(1)建立补考学生视图
createview补考学生信息(学号,姓名,性别,课程号,课程名,成绩)
as
selectstudent.学号,姓名,性别,sc.课程号,课程名,成绩
fromstudent,sc,course
wherestudent.学号=sc.学号
and
sc.课程号=course.课程号
成绩<
60;
(2)建立女生住宿信息视图
createview女生住宿信息(学号,姓名,性别,楼号,寝室号,寝室人数,备注)
selectstudent.学号,姓名,性别,r.楼号,寝室号,寝室人数,备注
fromstudent,sr,r
wherestudent.学号=sr.学号
sr.楼号=r.楼号
性别='
;
(3)建立男生住宿信息视图
createview男生住宿信息(学号,姓名,性别,楼号,寝室号,寝室人数,备注)
(4)建立选课信息视图
createview选课信息(学号,姓名,课程号,课程名,授课老师,成绩)
selectstudent.学号,姓名,course.课程号,课程名,授课老师,成绩
fromstudent,course,sc
course.课程号=sc.课程号;
(5)建立学生总体信息视图
createview学生总体信息(学号,姓名,性别,出生年月,民族,籍贯,政治面貌,楼号,寝室号)
selectstudent.学号,姓名,性别,出生年月,民族,籍贯,政治面貌,r.楼号,寝室号
sr.楼号=r.楼号;
2、建立索引:
1、在学生姓名属性上建立索引:
CREATENONCLUSTEREDINDEX[姓名]ON[dbo].[Student]
([姓名]ASC)
2、在学生学号属性上建立索引:
CREATEu