SQL数据库学生信息管理系统课程设计报告.docx
- 文档编号:7476844
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:29
- 大小:577.67KB
SQL数据库学生信息管理系统课程设计报告.docx
《SQL数据库学生信息管理系统课程设计报告.docx》由会员分享,可在线阅读,更多相关《SQL数据库学生信息管理系统课程设计报告.docx(29页珍藏版)》请在冰豆网上搜索。
SQL数据库学生信息管理系统课程设计报告
数据库课程设计报告
题目:
学生信息管理系统
姓名:
付进(2008081411)
莫春琴(2008081416)
班级:
08级信息《2》班
指导老师:
习慧丹老师
提交时间:
2010年12月28号
1、系统需求分析…………………………………………………….3
1.1、课程设计目的和意义…………………………………………..3
1.2、系统分析与设计………………………………………………..3
1.2.1、系统功能描述………………………………………….3
1.2.2、系统模块设计……………..........................................6
1.2.3、数据流图、数据字典和E—R图……………………...8
2、逻辑结构设计……………………………………………………...17
3、数据库的实现……………………………………………………...17
4、数据初始化………………………………………………………...21
5、视图、索引的建立………………………………………………...26
5.1、视图的建立…………………………………………………..26
5.2、索引的建立…………………………………………………..29
6、总结………………………………………………………………...30
7、参考文献……………………………………………………….......30
8、分工情况…………………………………………………………….31
1.系统需求分析
1.1、课程设计目的和意义:
a、数据库课程设计是为了巩固数据库知识,加强学生的实际动手能力和提高学生综合素质。
通过本实验达到以下目的:
1、熟练掌握一种数据库系统(如SQLSERVER)的使用。
2、熟练掌握一种数据库应用软件开发工具(ASP、VB.NET)的使用。
3、通过设计实际的数据库系统应用课题,进一步熟悉数据库管理系统的操作技术,提高动手能力,提高分析问题和解决问题的能力。
b、系统针对学生的基本情况,设计一个可以查询学生的基本信息、查询学生的选课记录、查询学生的分数、寝室楼等,可以修改学生的一些信息,还可以添加、删除等操作。
使老师更加方便了解学生的情况和使学生本人对于自己的信息更直观,该系统用于学院老师和学生本人。
1.2、系统分析与设计:
1.2.1、系统功能描述:
黔南民族师范学院学生管理系统主要根据全院全体学生信息需求来设计开发,主要是对学生的基本信息及情况作统一的管理,使老师更加容易掌握学生的基本信息及情况以及学生本人更加的了解自己的基本信息,学生的基本属性包括(学生学号、姓名、性别、出生年月、民族、籍贯、政治面貌)。
该系统主要用户教师和学生本人,但是主要控制由系统管理员,因此,系统主要对学生和教师开放,具体的功能需求分析如下:
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
否
主码
姓名
char
10
否
性别
char
2
否
民族
char
10
是
籍贯
char
100
是
出生年月
datetime
是
政治面貌
char
10
是
1、建立学生表语句:
CREATETABLEstudent(
学号char(12)constraintfirstkeyprimarykeynotnull,
姓名char(10)notnull,
性别char
(2)notnull,
出生年月datetime,
民族char(10),
籍贯char(100),
政治面貌char(10),
);
B、选课表
列名
数据类型
长度
是否为空
说明
课程号
char
10
否
主码
课程名
char
40
否
授课老师
char
10
是
学分
char
2
是
2、建立选课表语句:
CREATETABLEcourse(
课程号char(10)primarykeynotnull,
课程名char(40)notnull,
授课老师char(10),
学分char
(2),
)
C、SC表
列名
数据类型
长度
是否为空
说明
学号
char
12
否
主码
课程号
char
10
否
成绩
char
3
是
备注
char
20
是
补考/过关
3、建立SC表语句:
CREATETABLEsc(
学号char(12),
课程号char(10),
成绩smallint,
备注char(20),
primarykey(学号,课程号),
foreignkey(学号)referencesstudent(学号),
foreignkey(课程号)referencescourse(课程号),
);
D、专业情况M表
列名
数据类型
长度
是否为空
说明
专业号
char
10
否
主码
专业
char
20
是
院系
char
20
是
4、建立专业情况表M语句:
CREATETABLEM(
专业号char(10)primarykeynotnull,
专业char(20),
院系char(20),
)
E、SM表
列名
数据类型
长度
是否为空
说明
学号
char
12
否
主码
专业号
char
10
否
入学时间
char
15
是
班级
char
10
是
铺导员
char
10
是
5、建立SM表语句:
CREATETABLESM(
学号char(12),
专业号char(10),
入学时间char(15),
班级char(15),
铺导员char(10),
primarykey(学号,专业号),
foreignkey(学号)referencesstudent(学号),
foreignkey(专业号)referencesM(专业号),
);
F、住宿表R
列名
数据类型
长度
是否为空
说明
楼号
char
10
否
主码
寝室号
char
10
是
6、建立住宿情况表R语句:
createtableR(
楼号char(10)primarykey,
寝室号char(10),
)
G、sr表
列名
数据类型
长度
是否为空
说明
学号
char
12
否
主码
楼号
char
10
否
寝室人数
char
10
是
备注
char
20
是
createtablesr(
学号char(12),
楼号 char(10),
寝室人数 char(10),
备注char(20),
primarykey(学号,楼号),
foreignkey(学号)referencesstudent(学号),
foreignkey(楼号)referencesr(楼号),
);
4、数据初始化
(1)将学生信息加入到学生表(student)中
insertintostudent
values('2008081401','王寰','男','1949-1-10','汉族','福建省','共青团员')
insertintostudent
values('2008081402','鱼猛刚','男','1989-3-8','汉族','贵州贵阳','预备党员')
insertintostudent
values('2008081403','脏嗨啵','男','1989-4-22','苗族','贵州瓮安','共青团员')
insertintostudent
values('2008081404','小黑','男','2001-11-10','水族','贵州织金','共青团员')
insertintostudent
values('2008081405','豌豆','女','1989-5-16','汉族','天上人间','共青团员')
insertintostudent
values('2008081406','王娇','女','1988-2-20','汉族','梦幻国度','共青团员')
insertintostudent
values('2008081407','小Y','女','1989-4-14','汉族','外太空','共青团员')
insertintostudent
values('2008081408','张导','女','1989-11-11','藏族','火星','共青团员')
insertintostudent
values('2008081411','小七','男','1988-11-5','汉族','贵州赤水','共青团员')
(2)将选课信息加入表course中:
insertintocourse
values('1010','运筹学','罗刚老师','4')
insertintocourse
values('1011','web','钟志宏老师','4')
insertintocourse
values('1012','SQL数据库','习慧丹老师','2')
insertintocourse
values('1013','管理统计学','李泽平老师','4')
insertintocourse
values('1014','电子商务','胡洋老师','2')
insertintocourse
values('1015','计算机组装与维修','周立军老师','2')
insertintocourse
values('1016','计算机网络','石云辉老师','4')
insertintocourse
values('1017','财务管理','唐颖','2')
insertintocourse
values('1018','操作系统','黄隽老师','4')
(3)将相关数据加入表sc表中:
insertintosc
values('2008081401','1010','85','过关')
insertintosc
values('2008081401','1013','56','补考')
insertintosc
values('2008081402','1015','73','过关')
insertintosc
values('2008081403','1016','62','过关')
insertintosc
values('2008081403','1018','55','补考')
insertintosc
values('2008081404','1011','71','过关')
insertintosc
values('2008081405','1012','86','过关')
insertintosc
values('2008081406','1014','64','过关')
insertintosc
values('2008081407','1015','43','补考')
insertintosc
values('2008081411','1018','72','过关')
insertintosc
values('2008081408','1016','80','过关')
(4)将相关数据加入表专业情况表(M)表中:
insertintoM
values('NO.1','信息管理与信息系统','黔南师院计科系')
insertintoM
values('NO.2','计算机科学与应用','黔南师院计科系')
(5)将相关数据加入表SM表中:
insertintosm
values('2008081401','NO.1','2008-9-1','信息管理与信息系统
(1)班','李涛')
insertintosm
values('2008081402','NO.2','2008-9-1','计算机科学与应用
(2)班','李涛')
insertintosm
values('2008081403','NO.1','2008-9-1','信息管理与信息系统
(2)班','李涛')
insertintosm
values('2008081404','NO.2','2008-9-1','计算机科学与应用
(1)班','李涛')
insertintosm
values('2008081405','NO.1','2008-9-1','信息管理与信息系统
(2)班','李涛')
insertintosm
values('2008081406','NO.2','2008-9-1','计算机科学与应用
(1)班','李涛')
insertintosm
values('2008081407','NO.1','2008-9-1','信息管理与信息系统
(2)班','李涛')
insertintosm
values('2008081408','NO.2','2008-9-1','计算机科学与应用
(2)班','李涛')
insertintosm
values('2008081411','NO.1','2008-9-1','信息管理与信息系统
(1)班','李涛')
(6)将相关数据加入表r表中:
insertintor
values('6#','306')
insertintor
values('13#','203')
(7)将相关数据加入表sr表中:
insertintosr
values('2008081401','13#','6','850住宿费/年')
insertintosr
values('2008081402','13#','4','1150住宿费/年')
insertintosr
values('2008081403','13#','6','850住宿费/年')
insertintosr
values('2008081404','13#','4','1150住宿费/年')
insertintosr
values('2008081405','6#','6','850住宿费/年')
insertintosr
values('2008081406','6#','6','850住宿费/年')
insertintosr
values('2008081407','6#','6','850住宿费/年')
insertintosr
values('2008081408','13#','6','850住宿费/年')
insertintosr
values('2008081411','13#','6','850住宿费/年')
5、视图、索引的实现
1、视图的建立:
(1)建立补考学生视图
createview补考学生信息(学号,姓名,性别,课程号,课程名,成绩)
as
selectstudent.学号,姓名,性别,sc.课程号,课程名,成绩
fromstudent,sc,course
wherestudent.学号=sc.学号
and
sc.课程号=course.课程号
and
成绩<60;
(2)建立女生住宿信息视图
createview女生住宿信息(学号,姓名,性别,楼号,寝室号,寝室人数,备注)
as
selectstudent.学号,姓名,性别,r.楼号,寝室号,寝室人数,备注
fromstudent,sr,r
wherestudent.学号=sr.学号
and
sr.楼号=r.楼号
and
性别='女';
(3)建立男生住宿信息视图
createview男生住宿信息(学号,姓名,性别,楼号,寝室号,寝室人数,备注)
as
selectstudent.学号,姓名,性别,r.楼号,寝室号,寝室人数,备注
fromstudent,sr,r
wherestudent.学号=sr.学号
and
sr.楼号=r.楼号
and
性别='男';
(4)建立选课信息视图
createview选课信息(学号,姓名,课程号,课程名,授课老师,成绩)
as
selectstudent.学号,姓名,course.课程号,课程名,授课老师,成绩
fromstudent,course,sc
wherestudent.学号=sc.学号
and
course.课程号=sc.课程号;
(5)建立学生总体信息视图
createview学生总体信息(学号,姓名,性别,出生年月,民族,籍贯,政治面貌,楼号,寝室号)
as
selectstudent.学号,姓名,性别,出生年月,民族,籍贯,政治面貌,r.楼号,寝室号
fromstudent,sr,r
wherestudent.学号=sr.学号
and
sr.楼号=r.楼号;
2、建立索引:
1、在学生姓名属性上建立索引:
CREATENONCLUSTEREDINDEX[姓名]ON[dbo].[Student]
([姓名]ASC)
2、在学生学号属性上建立索引:
CREATEu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 数据库 学生 信息管理 系统 课程设计 报告