(2版)数据库实验11 存储过程触发器及答案(2)

1970-01-01 08:00

第二篇实验内容及安排

答:sNO ccNO NormalMark ExamMark Mark 081220101 0312091006 NULL 90 88

sNO ccNO NormalMark ExamMark Mark 081220101 0312091006 80 90 88

四、实验测验

1、创建一个带输入参数和输出参数的存储过程,要求实现如下功能:输入学生学号,输出学生的选课门数、平均分以及所选总学分。 答:create procedure c

(

@sno char(10),

@cnocount int output, @avgmark float output, @sumcredit int output) As begin

select @cnocount=count(*),@avgmark=avg(mark),@sumcredit=sum(credit) From student_course sc,course_class cc ,student s

where sc.sno=s.sno and cc.ccno=sc.ccno group by s.sNO,sname

end 执行过程:

Declare @ccount int Declare @smark float Declare @scredit int

Exec c '081220101' , @ccount output, @smark output, @scredit output

Select '081220101' as '学生号', @ccount as '选课门数', @smark as '平均分',

@scredit as '所选学分'

2、创建一个触发器,当在student_course中添加一个学生选课时,如果已选学分超过30学分或者选课人数超过65人,则拒绝学生本次选修申请。 答:create trigger trig1 on student_course

for insert ,update as declare @a int

-6-

declare @b int

select @a=(select SUM(credit) from course_class ) , @b=(select COUNT(*) from course_class cc ) from inserted if @a>30 or @b>65 begin rollback

raiserror('该学生无法再选课!',16,1)

end

结果:

insert student_course values('081710106',0312091006,0,90,90)

五、实验思考题

1、触发器的种类和用途?

2、存储过程的类型有哪些?分别有什么特征? 3、触发器在维护数据完整性方面有什么功能?

数据库原理与应用实验

-7-

第二篇实验内容及安排

-8-


(2版)数据库实验11 存储过程触发器及答案(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:模式2:人教版八年级上册数学教案(59页)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: