您好,欢迎来到纷纭教育。
搜索
您的当前位置:首页SQL触发器

SQL触发器

来源:纷纭教育
实验六 触发器实验

一、实验目的:

通过实验掌握触发器建立和使用,主要包括insert的after触发器、delete的after触发器、insert的after触发器和相关的instead of 触发器。

二、实验学时

2学时

三、实验准备:

1:在teaching数据库中,给students增加一列avgcj decimal(5,2),用来保存学生的平均成绩,并用下边的语句实现该列数据的填充。

Update students set avgcj=(select avg(score) from score where stu_id=students.stu_id) 2:在teaching数据库中,给courses增加一列avgcj decimal(5,2),用来保存课程的平均成绩,并用下边的语句实现该列数据的填充。

Update courses set avgcj=(select avg(score) from sc where cour_id=courses.cour_id)

四、实验内容:

1:在teaching数据库中,创建一个对score表的insert的after触发器,当对score表进行数据成功插入时,对学生表的平均成绩进行更改。

使用触发器:在score中插入一条正确的记录观察执行students和courses表中数据的变化。

2:在teaching数据库中,创建一个对score表的delete的after触发器,当对score表进行数据成功删除时,对学生表的平均成绩进行更改。

使用触发器:在score中删除一条记录后观察执行students和courses表中数据的变化。 3:在teaching数据库中,创建一个对score表的update的after触发器,当对score表进行数据成功删除时,对学生表的平均成绩进行更改。

使用触发器:在score中更新记录后观察执行students和courses表中数据的变化。

实 验 报 告

学号: 姓名: 成绩: 实验名称: 触发器实验 通过实验掌握触发器建立和使用,主要包括insert的after触发器、delete的after触发器、insert的after触发器和相关的instead of 触发器。 1: score表的insert的after触发器的内容 实验目的: create trigger insertcj on score for insert as begin declare @id char(15) select @id=stu_id from inserted Update students set avgcj=(select avg(score) from score where stu_id=@id) where stu_id=@xh end 给出插入的数据和变化的数据. 实验内容: 2: score表的delete的after触发器的内容 create trigger deletecj on score after delete as begin declare @xh char(15) select @xh=stu_id from deleted Update students set avgcj=(select avg(score) from score where stu_id=@xh) where stu_id=@xh end 给出删除的数据和变化的数据. 3: score表的update的after触发器的内容 create trigger updatecj on score after update as begin declare @xh char(15) select @xh=stu_id from updated Update students set avgcj=(select avg(score) from score where stu_id=@xh) where stu_id=@xh end 实验收获 教师评语:

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- fenyunshixun.cn 版权所有 湘ICP备2023022495号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务