《数据库原理与应用》实验报告三及答案.pdf
真诚为您提供优质参考资料,若有不当之处,请指正。
广东金融学院实验报告
课程名称:数据库原理与应用
实验编号
实验三数据库高级应用实验系别计科系
及实验名称
姓名学号班级
2014年05月14
实验地点新电1101实验日期实验时数8
日
指导教师同组其他成员无成绩
一、实验目的及要求
1、掌握SQLServer存储过程的定义和使用。
2、掌握SQLServer触发器的定义和使用。
二、实验环境及相关情况(包含使用软件、实验设备、主要仪器及材料等)
1、计算机操作系统要求在windowsXP以上。
2、并要求SQLServer软件2000以后版本。
三、实验内容及要求
利用实验指导书中的关系数据库完成下面题目:
1、说明下面代码段的功能
SELECTtnameas‘姓名’,tSexas‘性别’,
casetrank
when‘教授’then‘高级职称’
when‘讲师’then‘中级职称’
else
‘初级职称’
end
fromteacher
答:在教师表中选取姓名和性别两列,并给每个教师分等级;
2、完成下面代码的书写
计算student_course表的平时分数列的平均值。如果小于80,则分数增加其值的5%;如果分数的最
高值超过95,则终止该操作。在以下代码划线处填入适当的内容以完成上述功能。
WHILE(SELECT____avg________(NormalMark)FROMstudent_course)80
1/4
真诚为您提供优质参考资料,若有不当之处,请指正。
BEGIN
if(SELECTMAX(NormalMark)FROMstudent_course)____95_____
BREAK
ELSE
___UPDATEstudent_course
SETNormalMark=NormalMark*1.05
END
注意:实验前要先给所有同学的NormalMark赋一个初值,比如50。
3、根据要求完成下列题目
1)编写一个触发器:在添加期末成绩信息时,利用平时成绩、其中成绩和期末成绩来计算成绩总
评。如果没有期中成绩,则平时和期末成绩比重为2:8,如果有期中成绩,则平时、期中、
期末三者比重为2:2:6。
答:在student_course表中添加一列summark期末成绩,而exammark作为期中成绩,mark作为期末成绩;
createtriggerget_summark2onstudent_course
forinsert
as
Declare@snovarchar(10),@ccnochar(10)
Declare@nmarkint
Declare@emarkint
Declare@fmarkint
Select@nmark=NormalMark,@emark=exammark,@fmark=mark,@sno=sno,@ccno=ccno
f