学生选课数据库设计报告.docx
- 文档编号:24186574
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:15
- 大小:215.69KB
学生选课数据库设计报告.docx
《学生选课数据库设计报告.docx》由会员分享,可在线阅读,更多相关《学生选课数据库设计报告.docx(15页珍藏版)》请在冰豆网上搜索。
学生选课数据库设计报告
数据库原理及应用大作业
学生选课管理系统数据库设计
院系:
软件工程
班级学号:
软件14
学号:
XXXX
姓名:
XXXX
指导教师:
XXXX
2016年5月2日
一概述
一.1课题背景
21世纪这个信息爆炸时代,其科技亦日新月异,纵观时代开展,计算机已经成了我们生活不可缺少的一局部,而在计算机应用中,软件的作用十分突出,软件已经开展成为信息技术的核心,主导着信息产品的开发。
计算机在代替和延伸脑力劳动方面起着越来越重要的作用,在工业方面,日常生活方面无不如此。
就我们可以感受到的校园学生管理系统来说,计算机为其带来的便利不言而喻!
一.2学生管理系统分析
学生管理是学校管理中的一项重要任务,以往的手工操作已经不能适应现在办公的需要.为了摆脱繁琐的劳动,提高工作效率,利用计算机进展信息处理成为必然.开发功能完善及平安可靠的管理系统可以大大提高学校资源的利用率,及时,准确地获取需要的信息,充分发挥人员的工作潜力。
正是咨询业的迅速开展使得人们从过去的手工劳动中得以解脱.同时,编写一套完善的学生管理系统的任务就显得尤为重要.本学生管理系统可实现学生根本信息、成绩信息、课程信息、选课信息等的录入、修改、查询、更新和删除。
一.3设计环境
〔1〕 MicrosoftSQLServer2021
〔2〕 MicrosoftVisualStudio
〔3〕windowsxp以上,存〔512M以上〕
二需求分析
2.1系统功能要求设计
该系统相关功能情况如下:
〔1〕当用户登录时,根据用户类型不同而权限不同,学生,教室,管理员都有各自的权限。
〔2〕通过用户名和密码登录系统,学生可以进展选课操作也可查询学生根本信息、成绩根本信息、课程根本信息,学生所选课程成绩,修改用户密码等;教师查询学生相关信息也可以进展学生成绩录入,修改,删除等;管理员那么可以对学生和教师进展查询,修改,删除等,其权限最大。
〔3〕系统运行在Windows平台上,有一个较好的图形用户界面,操作简单,功能安排合理,并且进一步考虑系统在平安性,完整性,并发控制等方面的功能要求。
2.2数据需求
通过分析,总结出本系统对数据的需求如下:
〔1〕选课信息
包括:
学号,课程号,选课日期,实践成绩,考试成绩。
〔2〕学生信息
包括:
学号、、性别、地址
〔3〕课程信息
包括:
课程号、课程名称,系编号,教师编号,开课学期。
〔4〕教师信息
包括:
教师编号、教师、系编号、办公室号。
系信息
包括:
系编号,系名,教师编号,位置
用户信息
包括:
用户名,用户密码。
2.3数据流图
数据流图是描述系统部处理流程、用于表达软件系统需求模型的一种图形工具,这种表示法中用矩形表示源点和终点,用椭圆表示数据加工,用箭头表示数据流。
本学生管理系统的数据流图如下。
登录系统
用户
学生
教师
管理员
选课
课程
系别
管理系统
反应信息
查询选择
反应信息
管理课程
查增删改
查增删改
反应信息
管理选课
反应信息
反应信息
管理系别
反应信息
2.4数据字典
数据项是数据库的关系中不可再分的数据单位,下表分别列出了数据的名称、数据类型、长度、取值能否为空。
利用SQLServer2005建立“学生选课〞数据库,其根本表清单及表构造描述如下:
数据库中用到的表:
数据库表名
关系模式名称
备注
admin
管理员
用户登录信息
student
学生
学生根本信息
course
课程
课程根本信息
dept
系
系根本信息
teacher
教师
教师根本信息
sc
选课
选课根本信息
admin根本情况数据表,构造如下:
字段名
字段类型
长度
说明
names
nvarchar
10
用户
password
nvarchar
20
密码
student根本情况数据表,构造如下:
字段名
字段类型
长度
说明
sno
nvarchar
10
学号
sname
nvarchar
10
ssex
nvarchar
2
性别
saddress
nvarchar
20
地址
course根本情况数据表,构造如下:
字段名
字段类型
长度
说明
o
nvarchar
10
课程号
dno
nvarchar
10
系编号
tno
nvarchar
10
教师编号
ame
nvarchar
10
课程名
semester
nvarchar
20
开课学期
dept根本情况数据表,构造如下:
字段名
字段类型
长度
说明
dno
nvarchar
10
系编号
dname
nvarchar
10
系名
tno
nvarchar
10
教师编号
place
nvarchar
20
位置
teacher根本情况数据表,构造如下:
字段名
字段类型
长度
说明
tno
nvarchar
10
教师编号
tname
nvarchar
10
教师
dno
nvarchar
10
系编号
offno
nvarchar
10
办公室号
sc根本情况数据表,构造如下:
字段名
字段类型
长度
说明
sno
nvarchar
10
学号
o
nvarchar
10
课程号
ctime
nvarchar
20
选课日期
sscore
int
实践成绩
kscore
int
考试成绩
三概要设计
3.1概念模型
概念构造设计就是从现实概念中抽象出概念模型,即对信息世界建模,所以概念模型应该能方便、准确的表示信息世界中的常用概念。
概念模型的表示方法最著名的是实体—联系方法(Entity-RelationshipApproach),在该方法中实体型用矩形表示,矩形框写明实体名;属性用椭圆表示,并用无向边将其与相应的实体连接起来;联系用菱形表示,菱形框写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁表上联系的类型〔1:
1,1:
n或n:
m〕。
3.2E-R图表示概念模型
(1)学生实体E-R图
学生
学号
XX
性别
地址
(2)教师实体E-R图
教师
教师编号
教师XX
系编号#
办公室号
(3)课程实体E-R图
课程
系编号
课程号
教师编号#
开课学期
课程名称
(4)选课实体E-R图
选课
学号#
课程号
选课日期
考试成绩
实践成绩
(5)系实体E-R图
系
系编号
系名
教师编号#
位置
(6)用户实体E-R图
用户名
用户密码
用户
3.3合并分E-R图
通过分析上述实体间的联系将分E-R图合并为学生管理系统的根本E-R图,每个实体的属性在上面的分E-R图中已经给出,在此不予给出。
四逻辑设计
4.1由系统E—R图转化而得到的关系模式如下
(1)student(sno,sname,ssex,saddress),其中sno为主键。
(2)sc(sno,o,ctime,sscore,kscore),其中(sno,o)为主键。
(3)teacher(tno,tname,dno,offno),其中tno为主键。
(4)course(o,dno,tno,ame,semester),其中o为主键。
(5)dept(dno,dname,tno,place),其中dno为主键。
(6)admin(names,password),其中(names,password)为主键。
以上各关系模式之间的联系都是通过键码来建立关联的!
4.2逻辑模式的规化和优化
关系模式转化成逻辑模式的相应步骤如下:
(1)规化
(2)适应DBMS限制条件的修改
(3)对性能、存储空间等的优化
(4)用DBMS所提供的DDL定义逻辑模式
4.3表和表之间的关系
4.4选择数据库的存取方法
在实际设计中最常用的存取方法是索引发,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:
在经常需要搜索的列上建立索引; 在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键上建立索引;在经常需要根据围进展搜索的列上创立索引,因为索引已经排序,其指定的围是连续的等规那么。
才能充分利用索引的作用防止因索引引起的负面作用。
4.5设计数据库的存储构造
确定数据库的存储构造主要指确定数据的存放位置和存储构造,包括确定关系、索引、日志、备份等的存储安排及存储构造,以及确定系统存储参数的配置。
因为该成绩管理系统的数据量小,所以我们只用把数据存储在使用的电脑硬盘上,不用作更多的安排。
4.6数据库的相关创立
创立学生表:
createtablestudent(
snonvarchar(10)primarykey,
snamenvarchar(10)notnull,
ssexnvarchar
(2)notnull,
saddressnvarchar(20)null)
(2)创立教师表:
createtableteacher(
tnonvarchar(10)primarykey,
tnamenvarchar(10)notnull,c
dnonvarchar(10)notnull,
offnonvarchar(10)null,
foreignkey(dno)referencesdept(dno))
(3)创立课程表:
createtablecourse(
onvarchar(10)primarykey,
dnonvarchar(10)notnull,
tnonvarchar(10)notnull,
amenvarchar(10)notnull,
semesternvarchar(20)null,
foreignkey(dno)referencesdept(dno),
foreignkey(tno)referencesteacher(tno))
(4)创立选课表:
Createtablesc(
snonvarchar(10)notnull,
onvarchar(10)notnull,
ctimenvarchar(20)null,
sscoreintnull,
kscoreintnull,
primarykey(sno,o),
foreignkey(sno)referencesstudent(sno),
foreignkey(o)referencescourse(o))
(5)创立用户表:
Createtableadmin(
namesnvarchar(10)notnull,
passwordnvarchar(20)notnull,
primarykey(names,password))
(6)创立系表:
Createtabledept(
dnonvarchar(10)primarykey,
dnamenvarchar(10)notnull,
tnonvarchar(10)notnull,
placenvarchar(20)null,
foreignkey(tno)referencesteacher(tno))
(7)创立数据库:
数据名:
学生管理表
数据库主文件路径全名:
C:
\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\DATA
日志文件路径全名:
C:
\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\DATA
createdatabase学生管理表
onprimary
(Name=’学生管理表db’,--文件逻辑名
Filename=’C:
\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\DATA\学生管理表.mdf’,--文件磁盘文件路径全称
Size=10,--初始化大小
Maxsize=20,--最大值
Filegrowth=1)
Logon
(Name=’学生管理表log’,
File=’C:
\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\DATA\学生管理表_log.ldf’,
Size=10,
Maxsize=20,
Filegrowth=1)
(8)创立触发器
createtriggertonstudent
fordelete
as
declarebhnvarchar(10)
selectbh=deleted.sno
fromdeleted
ifexists(selectsnofromscwheresc.sno=bh)
deletefromscwheresno=bh
4.7数据库的相关操作
〔1〕添加学生信息:
insertintostudent〔sno,sname,ssex,saddress〕values(‘202115126’,’王姬’,’女’,’省市’);
〔2〕添加教师表:
insertintoteacher(tno,tname,dno,offno)values(‘06440’,’周健国’,’2212’,null);
〔3〕删除学生信息:
deletesno=’202115127’fromstudent;
〔4〕更新学生表:
updatestudentsetsname=’娜’wheresno=’202154136’;
〔5〕查询学生信息:
selectsno=’20211226’fromstudent;
五数据库设计总结
5.1数据库的设计过程
本次是要设计一个学生选课管理系统,由于本人编程能力非常有限,选择了VB和SQLServer,根据的本次课程设计的要求,在设计学生选课管理系统数据库过程中经历了以下几个阶段:
〔1〕需求分析阶段
〔2〕概念构造设计阶段
〔3〕逻辑构造设计阶段
〔4〕编码:
利用T-SQL语言创立和管理数据库
〔5〕用VC、ASP、jsp、java等设计数据库的操作界面
〔6〕设计小结
按照上述步骤一一做来,根本上到达要求。
在制作报告的过程中,将过程以及结果通过文字和图形表示出来,再加上对于本次课程设计的思想总结,便构成了本次课程设计的说明书。
5.2数据库设计的特点与缺乏
在本次课程设计中,该学生选课管理系统允许用户进展登录查看相关的信息。
拥有不同权限的用户可以执行不同的操作,这和实际相符合,特别是在数据库管理这方面。
在建立数据库表的时候,为数据库中的表建立了关系和相关约束,保证了数据库中的实体完整性和参照性完整性。
然而,由于自身能力缺乏,经历不够,所以分析的不够准确,导致实用性不强。
是这次数据库中的缺乏处之一。
通过这次数据库的设计,使我加深了对数据库的理解,除此之外,还有上网查询一些相关的资料,和一些实际问题实现的例子,通过理解别人实现的过程,学习实现的一些根本思路。
在这个过程中,我对整个连接数据库程序的过程有了一个更立体的认识和了解。
在这次的设计中,让我进一步认识了数据库的设计过程以及设计各阶段所做的工作和要注意的细节局部,对于数据库的功能也有了更加深的了解。
六参考文献
[1]?
数据库系统概论?
——编著〔史嘉权〕2006年1月第一版清华大学
[2]?
数据库系统概论?
王珊萨师煊编著——5版.——:
高等教育,2021.9〔2021.5重印〕
[3]?
软件工程:
理论实践=SoftWareEngineering:
TheoryandPractice?
第四版:
英文/〔美〕弗莱格〔Pfleeger,S.L.〕,〔美〕阿特利〔Atlee,J.M).影印本。
——:
高等教育,2021.12〔2021.3重印〕
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 选课 数据库 设计 报告