教材质量评价系统的数据库设计和数据操作.docx
《教材质量评价系统的数据库设计和数据操作.docx》由会员分享,可在线阅读,更多相关《教材质量评价系统的数据库设计和数据操作.docx(20页珍藏版)》请在冰豆网上搜索。
教材质量评价系统的数据库设计和数据操作
课程设计II
设计说明书
教材质量评价系统的
数据库设计和数据操作
学生
惠立山
学号
1221024046
班级
信管1202
成绩
指导教师
任民宏
数学与计算机科学技术学院
2014年9月12日
课程设计任务书
2014—2015学年第1学期
课程设计名称:
课程设计II
课程设计题目:
教材质量评价系统的数据库设计和数据操作
完成期限:
自2014年9月1日至2014年9月12日共2周
设计容:
教材质量评价系统,要求系统具有登录、教材质量评价、查询、统计和后台维护功能。
其中登录功能要求有教师和学生两种不同身份登录。
教材质量评价分教师(专家)评价和学生评价。
查询功能可按课程名称查看该教材的质量评价信息,也可以按班级查看一个班级对教材的质量评价信息,还可以查询院系所承担的所有课程的评价信息,并能将查询结果打印出来。
统计功能可按教材统计学生对各个观测点的打分合计和观测点的平均值,还可以按院系统计各个院系所征订教材的平均得分,最高分和最低分。
后台维护功能要求能管理教师信息、学生信息、课程信息、教材信息、开课学期、院系、班级和专业等。
根据以上要求完成下列题目:
①针对以上的需求运用数据流图和数据字典进行需求分析。
②设计数据库的概念结构。
③设计数据库的逻辑结构。
④设计数据库的物理结构。
⑤在SQLSERVER中建立数据库。
⑥根据查询和统计的需要,建立数据库中的视图。
⑦根据数据操作需要,建立数据库中的存储过程。
⑧建立数据库的备份作业,要求在每天2:
00备份数据库。
⑨根据题目的需求,写出完成各个功能操作的SQL语句。
指导教师:
教研室负责人:
课程设计评阅
评语:
指导教师签名:
年月日
摘要
设计一个教材质量评价系统,要求系统具有登录、教材质量评价、查询、统计和后台维护功能。
根据需求运用数据流图和数据字典进行需求分析,在SQLSERVER中建立数据库,运用简单SQL语句进行查询,备份数据库,建立存储过程。
关键词:
教材质量评价系统;SQLSERVER;数据库系统
1课题描述1
2数据库设计2
2.1需求分析2
2.2概念结构设计3
2.3逻辑结构设计4
2.4物理结构设计4
3创建数据库7
3.1数据库及表的创建7
3.2数据库视图的创建9
3.3数据库的备份10
4数据库操作11
4.1数据的插入11
4.2数据的修改11
4.3数据的删除12
4.4数据的查询12
5总结14
参考文献15
1课题描述
本次课程设计主要设计了一个教材质量评价系统,要求系统具有登录、教材质量评价、查询、统计和后台维护功能。
其中登录功能要求有教师和学生两种不同身份登录。
教材质量评价分教师(专家)评价和学生评价。
查询功能可按课程名称查看该教材的质量评价信息,也可以按班级查看一个班级对教材的质量评价信息,还可以查询院系所承担的所有课程的评价信息,并能将查询结果打印出来。
统计功能可按教材统计学生对各个观测点的打分合计和观测点的平均值,还可以按院系统计各个院系所征订教材的平均得分,最高分和最低分。
后台维护功能要求能管理教师信息、学生信息、课程信息、教材信息、开课学期、院系、班级和专业等。
2数据库设计
2.1需求分析
根据对目前教材评价情况的分析和对目前教材质量评价系统的了解,我们所要开发的教材质量评价系统需要具有教材评价、查询、统计、打印教材征订单和后台维护等功能。
教材质量评价系统对于教学质量的提高具有重要作用,一套方便、高效的计算机化的信息系统对于推进学校教材征订管理的自动化具有其积极的意义。
(1)数据流程图
图2.1教材质量评价系统流程图
(2)数据字典
数据流名称:
教师信息
位置:
教师→P1
定义:
教师=教师编号+教师+所属专业+所教课程
说明:
纪录各个教师的具体信息,且查看各教师信息是否完好,是否与所带课程相符
数据流名称:
学生信息
位置:
学生→P2
定义:
学生=学生编号++性别+年龄+所属班级+所属专业+所属系
说明:
纪录学生的具体信息,且查看各学生息是否完好,是否与所属班级相符
数据流名称:
教材信息
位置:
教材→P3
定义:
教材=教材编号+教材名称+作者++出版日期
说明:
纪录教材的具体信息,且查看各系信息是否完好
数据流名称:
管理员情况
位置:
管理员→P4
定义:
管理员=用户名+密码
说明:
通过管理员的用户名和口令鉴别用户身份
数据存储编号:
D1
数据结构:
教师教材评价=教师编号+教材+订购日期
说明:
教师对自己所带课程对应的教材进行评价
数据存储编号:
D2
数据结构:
学生教材评价=学生编号+教材编号+评价容
说明:
学生对自己学习的所有课程的对应教材进行评价
数据存储编号:
D3
数据结构:
教材记录=教材编号+课程编号
说明:
教材所适用的课程
数据存储编号:
D4
数据结构:
用户登记=用户名+用户身份
说明:
用户通过用户名和身份登录
2.2概念结构设计
概念结构设计是将系统需求分析得到的用户需求抽象为信息结构的过程,概念结构设计的结果是数据库的概念模型。
概念模型的设计思想是根据需求分析的容,改系统用E-R图进行描述如图2.2所示。
图2.2E-R图
2.3逻辑结构设计
将图2.2的ER图转化为关系模式如下:
班级(班级号、班级名称、所属专业)
专业(专业号、专业名、所属系)
系(系号、系名)
课程(课程号、课程名、教材编号)
课程表(课程号、班级、开课时间)
学生(学号、、年龄、性别、所属班级)
教师(教工号、教师名称)
教材表(教材号、书名、、作者、出版日期)
学生教材评价(学号,教材号,容质量、印刷质量、排版质量、总体水平)
教师教材评价(教工号,教材号,容质量、印刷质量、教学质量、思想水平)
2.4物理结构设计
(1)班级表物理结构如表2.2所示
表2.2班级表物理结构
属性名
数据类型
长度
允许空
备注
bjg
int
20
否
班级号
bjmc
varchar
20
否
班级名称
cszybh
int
20
否
所属专业编号
(2)专业表物理结构如表2.3所示
表2.3专业表物理结构
属性名
数据类型
长度
允许空
备注
zyh
int
20
否
专业号
zymc
varchar
20
否
专业名称
ssyxbh
int
20
否
所属院系编号
(3)系表物理结构如表2.4所示
表2.4系表物理结构
属性名
数据类型
长度
允许空
备注
xh
int
20
否
系号
xmc
varchar
20
否
系名称
(4)课程物理结构如表2.5所示
表2.5课程表物理结构
属性名
数据类型
长度
允许空
备注
kch
int
20
否
课程号
kcmc
varchar
20
否
课程名称
jcbh
int
20
否
教材编号
(5)课程表物理结构如表2.6所示
表2.6课程表物理结构
属性名
数据类型
长度
允许空
备注
kch
int
20
否
课程号
bjmc
int
20
否
班级名称
kksj
datatime
20
否
开课时间
(6)学生表物理结构如表2.7所示
表2.7学生表物理结构
属性名
数据类型
长度
允许空
备注
xh
int
20
否
学号
xsxm
varchar
20
否
学生
xsnl
int
20
否
学生年龄
xb
varchar
20
否
性别
ssbj
int
20
否
所属班级
(7)教师表物理结构如表2.6所示
表2.6教师表物理结构
属性名
数据类型
长度
允许空
备注
jsbh
int
20
否
教师编号
jsxm
varchar
20
否
教师
(8)教材表物理结构如表2.8所示
表2.8教材表物理结构
属性名
数据类型
长度
允许空
备注
jcbh
int
20
否
教材编号
jcmc
varchar
20
否
教材名称
cbs
varchar
20
否
zz
varchar
20
否
作者
cbsj
datetime
20
否
出版时间
(9)学生评价表物理结构如表2.8所示
表2.8学生评价表物理结构
属性名
数据类型
长度
允许空
备注
xh
int
20
否
学号
jcbh
int
20
否
教材编号
nrzl
int
20
否
容质量
xszl
int
20
否
印刷质量
pbzl
int
20
否
排版质量
ztsp
int
20
否
总体水平
(10)教师评价表物理结构如表2.8所示
表2.8教师评价表物理结构
属性名
数据类型
长度
允许空
备注
jsbh
int
20
否
教师编号
jcbh
int
20
否
教材编号
nrzl
int
20
否
容质量
pbzl
int
20
否
排版质量
jxzl
int
20
否
教学质量
sxsp
int
20
否
思想水平
3创建数据库
3.1数据库及表的创建
(1)创建数据库
在MicrosftSQLServer查询分析器中新建教材质量评价数据库,执行如下句。
createdatabase教材质量评价系统onprimary(
name=n'教材质量评价系统数据库',filename=n'C:
\ProgramFiles\MicrosoftSQLServer\data\教材质量评价系统数据库.mdf',
size=3072KB,maxsize=unlimited,filegrowth=1024KB
)
(2)创建院系表
createtabledepartment(depIdintnotnullprimarykey,
depNamevarchar(20)notnull
)
(3)创建专业表
createtableprofessional(
proIdintnotnullprimarykey,
proNamevarchar(20)notnull,
depIdintnotnull,
constraintfk13foreignkey(depId)referencesdepartment(depId)
)
(4)创建班级表
createtableclass(classIdintnotnullprimarykey,
classNamevarchar(20)notnull,
proIdintnotnull
constraintfk12foreignkey(proId)referencesprofessional(proId)
)
(5)创建学生表
createtablestudent(stuIdvarchar(20)notnullprimarykey,
stuNamevarchar(20)notnull,
stuAgeintnotnull,
stuSexvarchar(20)notnull,
classIdintnotnull,
constraintfk1check(stuSexin('男','女')),
constraintfk11foreignkey(classId)referencesclass(classId)
)
(6)创建教材表
createtablejiaocai(jcIdintnotnullprimarykey,
jcNamevarchar(20)notnull,
pressvarchar(20)notnull,
authorvarchar(20)notnull,
outdatedatetime
)
(7)创建课程
createtablecourse(couIdintnotnullprimarykey,
couNamevarchar(20notnull,
jcIdintnotnull
constraintfk14foreignkey(jcId)referencesjiaocai(jcId)
)
(8)创建课程表
createtablesyllabus(couIdintnotnull,
classIdintnotnull,
startimedatetime,
constraintfk2primarykey(couId,classId),
constraintfk3foreignkey(couId)referencescourse(couId),
constraintfk4foreignkey(classId)referencesclass(classId)
)
(9)创建教师表
createtableteacher(teacIdintnotnullprimarykey,
teacNamevarchar(20)notnull
)
(10)创建学生评价表
createtablestuEvaluation(
stuIdintnotnull,
jcIdintnotnull,
neirongintcheck(neirong>=0andneirong<=10),
yinshuaintcheck(yinshua>=0andyinshua<=10),
paibanintcheck(paiban>=0andpaiban<=10),
zongtiitncheck(zongti>=0andzongti<=10),
constraintfk5primarykey(stuId,jsId),
constraintfk6foreignkey(stuId)referencesstudent(stuId),
constraintfk7foreignkey(jcId)referencesjiaocai(jcId)
)
(11)创建教师评价表
createtableteacEvaluation(
teacIdintnotnull,
jcIdintnotnull,
neirongintcheck(neirong>=0andneirong<=10),
yinshuaintcheck(yinshua>=0andyinshua<=10),
jiaoxueintcheck(jiaoxue>=0andjiaoxue<=10),
sixiangintcheck(sixiang>=0andsixiang<=10),
constraintfk8primarykey(teacId,jsId),
constraintfk9foreignkey(teacId)referencesteacher(teacId),
constraintfk10foreignkey(jcId)referencesjiaocai(jcId)
)
3.2数据库视图的创建
根据查询和统计的需要建立视图,方便管理员对教材质量评价信息的具体查找,SQL语句如下:
(1)学生详细信息视图
createviewview_学生详细信息
asselectstudent.stuName,class.className,professional.proName,
department.depName,
fromstudent,class,professional,department
whereclass.classId=student.classIdand
professional.proId=class.proIdand
department.depId=professional.depId
(2)学生评价详细信息视图
createviewview_学生评价信息
asselectstudent.stuName,jiaocai.jcName,neirong,yinshua,
paiban,zongti
fromstudent,jiaocai,stuEvaluation
wherestudent.stuId=stuEvaluation.stuIdand
jiaocai.jcId=stuEvaluation.jcId
(3)教师评价详细信息视图
createviewview_教师评价详细信息
asselectteacher.teacName,jiaocai.jcName,neirong,yinshua,
jiaoxue,sixiang
fromteacher,jiaocai,teacEvaluation
whereteacher.teacId=teacEvaluation.teacIdand
jiaocai.jcId=teacEvaluation.jcId
3.3数据库的备份
在数据库中选定“教材质量评价”,右键,在弹出框中选择“任务”,点击后在弹出框中选择“备份”,弹出的图如图3.1所示。
图3.3数据库备份
4数据库操作
4.1数据的插入
(1)向教材表中插入3条数据
insertintojiaocaivalues(
31,'数据库','机械工业','苗雪蓝','2007-8-3')
insertintojiaocaivalues(
32,'高等数学','西北工业大学','王树勋','2010-3-3')
insertintojiaocaivalues(
33,'大学英语','外语教学','淑堂','2007-6-3')
结果如图4.4所示。
图4.4教材插入数据表
(2)向教师表中插入3条数据
insertintoteachervalues(11001,'肖老师')
insertintoteachervalues(11002,'任老师')
insertintoteachervalues(11001,'老师')
插入结果如图4.5所示。
图4.5教师插入数据表
(3)向教师评价表中插入3条数据
insertintoteacEvaluationvalues(11001,31,9,9,9,9)
insertintoteacEvaluationvalues(11002,31,8,10,9,9)
insertintoteacEvaluationvalues(11003,31,9,9,8,9)
插入结果如图4.6所示。
图4.6教师评价表中插入数据
4.2数据的修改
(1)将教材表学英语的出版时间改为“2007-9-3”
updatejiaocaisetoutdate='2007-9-3'
wherejcName=’大学英语’
修改后结果如图4.7所示。
图4.7大学英语出版时间修改表
(2)将教师评价表中“11003”的老师为教材编号为“33”的“教学”的评分改为10分
updateteacEvaluationsetjiaoxue=10
whereteacId=11003
修改后结果如图4.8所示。
图4.8教师评价信息修改表
4.3数据的删除
将教材表中名为“高等数学”的教材删除
deletefromjiaocai
wherejcName=’高等数学’
删除后的结果如图4.9所示。
图4.9删除表
4.4数据的查询
(1)查询老师对“数据库”教材评价的评价信息
selectteacName教师,jcName教材名称,neirong容评价,
yinshua印刷评价,jiaoxueas教学评价,sixiangas思想评价
fromteacher,jiaocai,teacEvaluation
whereteacher.teacId=teacEvaluation.teacIdand
jiaocai.jcId=teacEvaluation.jcIdand
jcName=’数据库’
查询结果如图4.10所示。
图4.10信息查询表
(2)查询老师对“数据库”教材评价的平均得分
select
case
whenjcId=31then'数据库'
else'大学英语'
end教材名,
avg(neirong)as容平均分,avg(yinshua)as印刷平均分,
avg(jiaoxue)as教学平均分,avg(sixiang)as思想平均分
fromteacEvaluation
groupbyjcId
havingjcIdin(selectjcId
fromjiaocai
wherejcName='数据库'
)
查询结果如图4.11所示。
图4.11信息查询表
5总结
通过本次课设,我们学会了有关教材质量评价系统数据库的基本创建,通过需求分析,概念结构设计设计,逻辑结构设计,物理结构设计等过程,基本建立了数据库系统,用SQL语句进行了数据库表的建立,视图的建立,存储过程的建立,数据库的备份,在查询分析器中,进行了有关数据库中数据的删除,查询,修改,录入等操作。
通过本次课设基本了解了有关数据库建立的基本操作,巩固了数据库有关知识,锻炼了自己一定的动手操作能力,对自己有了极大的提升。
参考文献
[1]苗雪兰,宋歌,瑞新,等.数据库系统原理及应用教程[M].:
机械工业,2010
[2]建华,周主柱,宋歌,等.数据库系统设计与原理[M].:
清华大学,2006
[3]萨师煊,王珊.数据库系统概论(第四版)[M].:
高等教育,2000