SQL数据库大作业.docx

上传人:b****5 文档编号:4317778 上传时间:2022-11-29 格式:DOCX 页数:20 大小:2.42MB
下载 相关 举报
SQL数据库大作业.docx_第1页
第1页 / 共20页
SQL数据库大作业.docx_第2页
第2页 / 共20页
SQL数据库大作业.docx_第3页
第3页 / 共20页
SQL数据库大作业.docx_第4页
第4页 / 共20页
SQL数据库大作业.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

SQL数据库大作业.docx

《SQL数据库大作业.docx》由会员分享,可在线阅读,更多相关《SQL数据库大作业.docx(20页珍藏版)》请在冰豆网上搜索。

SQL数据库大作业.docx

SQL数据库大作业

 

数据库基础

------大作业

 

题目:

学生信息管理系统

教学系:

数学与统计学院

专业班级:

071121

学生姓名:

8888

 

一、系统设计

在进行系统的详细设计之前,首先应该设计好系统的模式并确定好系统的功能目标和具体页面,下面就是学生信息管理的系统设计。

从系统的设计目标上来看,学生信息管理系统的主要功能如下:

(1)登录验证功能。

(2)学生信息查看功能。

(3)信息编辑删除和添加功能。

(4)成绩查看和搜索功能。

(5)课程浏览搜索功能。

(6)密码修改功能。

从系统的实现上来看,共有十七个页面,每个页面的功能实现和说明如下所示。

页面说明

页面名称

说明

登录页面,用来验证用户

登录失败页面

新用户注册页面

新用户注册成功页面

新用户注册失败页面

系统首页面,说明主要实现功能

学生相关信息页面,查看学生信息

学生添加页面,实现学生的添加

添加学生成功页面

学生编辑选择页面,选择需要修改的学生号

学生编辑页面,实现学生信息的修改

学生信息修改成功的页面

没有权限时的显示页面

实现课程信息的浏览和搜索功能页面

实现学生成绩的浏览和查询功能页面

用户修改密码功能页面

用户修改密码成功页面

下面介绍在系统设计之前数据库的需求分析和设计。

二、数据库设计

1.需求分析

学生信息管理系统是各大高校所不可缺少的一部分,随着计算机水平的快速提高,学生信息管理系统也在不断地发展和完善。

管理信息系统主要包括了学生的信息管理以及课程和成绩管理,基本上实现了管理系统所必须的功能,下面介绍学生信息管理系统数据库的设计。

2.概念设计

数字词典

数据词典如下表所示:

数据词典

字段名

数据名

数据的描述

Userid

用户编号

文本,10

Username

用户名

文本,10

Userpwd

用户密码

文本,10

Authlevel

用户级别

文本,10

Stuid

学生编号

文本,10

Stuname

学生姓名

文本,10

Sex

性别

文本,4

Minzu

民族

文本,10

Birthday

出生年月

文本,10

Intime

入学时间

文本,10

Class

班级

文本,10

Comefrom

生源地

文本,20

Beizhu

备注

文本,50

Courseid

课程号

文本,10

Couresename

课程名称

文本,10

Couresetime

课程学时

文本,10

Xuefen

课程学分

文本,10

Coursetype

课程类型

文本,10

Teacher

授课老师

文本,10

Id

ID

文本,10

Score

成绩

文本,9

根据以上的需求分析,E-R图如图下图所示:

E-R图如下

关系模式

E-R图转换成关系模式如下:

学生(学号、姓名、性别、民族、出生年月、入学时间、班级、生源地、备注)

课程(课程号、课程名称、学时、学分、课程类型、授课老师)

成绩(ID、学号、课程号、考试成绩)

选修(学号、课程号、选修时间)

查询(学号、课程号、查询时间)

3.逻辑设计

根据前面的E-R图转换的关系模式一共有以下几个表:

Student(学生表)

Course(课程表)

Score(成绩表)

 

Elective(选修表)

Select(查询表)

4.数据库关系图

根据以上几个表的关系建立如下所示的关系图:

5.数据的添加、修改、删除语句的实现

数据的添加语句举例如下:

(1)向成绩表里添加学号为‘*****’学生选修了四门课的成绩。

insertscore

values('5','200001','00001','95'),

('6','200001','10001','90'),

('7','200001','10002','96'),

('8','200001','20001','85')

(2)向课程表里添加一条毛慨的信息

insertcourse

values('20003','毛慨','60','5','2','周易')

数据的修改语句举例如下:

(1)修改学号为‘******’学生的籍贯为湖北监利

updatestudent

setcomefrom='湖北监利'

wherestuid='200004'

(2)修改课程号为‘20003’的学时为64个学时

updatecourse

setcoursetime='64'

wherecourseid='20003'

数据的删除语句举例如下:

(1)删除学号为‘******’学生的信息

deletestudent

wherestuid='200005'

(2)删除课程名称为‘毛慨’的信息

deletecourse

wherecoursename='毛慨'

6.查询语句简单查询、连接查询、子查询、复合条件查询语句的实现

简单查询语句的举例:

(1)查询课程表中前三条的信息

selecttop3*fromcourse

(2)查询班级为‘经管2091’班的学生学号、姓名、性别和班级名称

select,,,

fromstudent

whereclass='经管2091'

(3)查询学生姓名以‘陈’开头的学生学号和班级

select,

fromstudent

wherestunamelike'陈%'

(4)查询课程表的所有信息,查询结果先按课程号降序排列,再按学分升序排列

select*fromcourse

orderbycourseiddesc,coursexuefenasc

(5)查询学生人数总数,查询结果以学生总数为别名

selectCOUNT(*)as学生总数

fromstudent

(6)查询所有学生成绩的总平均分,查询结果以平均分为别名

selectAVG(score)as平均分

fromscore

连接查询语句的实现:

(1)查询学号为‘******’的学生的学号、姓名、性别、班级和选修的课程号和成绩

select,,,

,

fromstudent,score

where=and='100001'

(2)查询学号为‘******’学生的学号、姓名和选修的课程号及选修时间

select,,

fromstudent,elective

where=

and='200001'

(3)查询学生查询了课程的姓名、班级、课程号、课程名、课程学分及查询时间

select,,

,

fromstudent,course,sel

where=and=

子查询语句的实现:

(1)查询学号为‘******’学生所修的课程号和成绩

select,fromscore

wherestuidin

(selectstuidfromstudentwherestuid='100001')

(2)查询选修了课程名为‘大学英语’的学生学号和姓名

selectstuid,stuname

fromstudentwherestuidin

(selectstuidfromscore

wherecourseidin

(selectcourseidfromcourse

wherecoursename='大学英语'))

(3)列出高于平均分的学生学号、姓名及班级

selectstuid,stuname,class

fromstudentwherestuidin

(selectstuidfromscore

wherescore>

(selectAVG(score)fromscore

))

 

(4)查询比‘经管2091’班中某一学生年龄小的其他班的学生学号和姓名

selectstuid,stuname

fromstudentwherebirthday>any

(selectbirthdayfromstudent

whereclass='经管2091')

andclass<>'经管2091'

复合条件查询语句的实现:

select,,,

,

fromstudent,course,score

where=

and=

andscore>'90'

7.视图和索引的应用

(1)视图的创建

以学生表为基础,创建一个名称为“v_经管班”学生的视图,其包含学生的学号、姓名和性别这几列,筛选记录条件为“class=‘经管2091’”

createviewv_经管班

asselect,,

fromstudent

whereclass='经管2091'

(2)视图的查看

select*fromv_经管班

(3)索引的创建

为了方便查找学生信息,为‘student’创建一个基于‘stuid、stuname、class’组合列的索引stu_index

createindexstu_index

onstudent(stuid,stuname,class)

(4)查询索引信息

execsp_helpindexstudent

8.数据库备份和还原

由于学生信息管理系统只需要一个小型数据库管理,那么我们只需要每个星期一进行一次完整备份,每天进行一个差异备份,每二个小时进行一次日志备份即可。

数据库还原根据我们遇到的紧急情况进行相应的还原,这里就不再阐述。

三、系统实施

1.在Dreamweaver8中建立一个动态站点,其目录在F盘下的学生信息管理系统。

2.动态站点建立好后,我们就需要为动态网页连接后台的SQLSERVER2008数据库。

其步骤如下:

(1)在ODBC数据源里的系统DSN里建立一个数据源,选择SQLServer数据源,其截图如下:

(2)给新的数据源命名,并选择想要连接的数据库服务器,其截图如下图:

(3)

(3)选择你想要连接的数据库名称,即系统后台需要的数据库,其截图如下:

(4)后台数据库选择好后,点击下一步开始测试数据源,其测试的相关截图如下:

(5)建立好后的SQLServer数据源如下图:

 

(6)单击确定后,即建立好了数据源,然后回到Dreamweaver8,在Dreamweaver8点击数据库+,单击数据源名称,将连接名称也命名为qq,其相关截图如下:

(7)单击确定,即Dreamweaver8与后台数据库建立好了连接。

3.系统功能演示如下:

(1)进入系统登录页面如下:

(2)登录失败的页面如下:

新用户注册的页面如下:

注册失败的页面如下:

注册成功的页面如下:

(3)登录成功的页面如下:

(4)查看学生信息页面如下:

增加学生信息页面如下:

选择编辑学生信息页面如下:

编辑学生信息页面如下:

(5)查询学生课程信息页面如下:

(6)查询学生成绩页面如下:

(7)密码修改页面如下:

密码修改成功页面如下:

到此为止,我就该学生信息管理系统的功能全部都演示完了,虽然该系统还是存在不少缺点,但至少基本上实现了管理系统所必须的功能,我一定会在以后的学习中更加努力学习数据库知识,希望将来能够为工作派上用场。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1