什么是触发器
一个在修改制定表中的数据时执行的存储过程。
特点 : 通过事件 来触发, 比较被动
优点: 自动执行 ;
可以通过相关表进行层叠更改;
可以强制限制,比CHECK约束所定义的更加复杂,
种类: DDL触发器; DML触发器;
创建INSERT触发器
create trigger T_addnum
on 学生信息
for insert
as
update 班级信息 set 班级人数=班级人数+1
where 班级编号=(select 所属班级 from #inserted) ‘创建触发器
Select 班级人数 form 班级信息 where 班级编号='2005010'
Insert into 学生信息 values ('2019','田泽凯','男','1997-10-23','汉','廊坊')
Select 班级人数 form 班级信息 where 班级编号='2005010' '插入一个学生
创建DELETE 触发器
Cerate Trigger T_deleteteacher
On 教师信息
For DELETE
As
select 姓名 as 被删除的教师姓名,性别,年龄,联系电话 From DELEted
删除记录
Delete form 教师信息 where 教师编号='2005001'
创建UPDATE触发器
Create trigger T_update
On 教师信息
For update
As
If (update(姓名)or update( 性别))
Begin
print'事物不能被处理,基础数据不能修改!'
rollback transaction
End
Else
print'数据修改成功!'
创建DDL触发器
Create tigger T_notdelete
On database
For Drop_table,alter_table
As
print'事物不能被处理,基础数据不能修改和删除!'
rollback
Drop table_student
管理触发器
触发器-修改,
法(1) 触发器- 禁用 法(2)alter table 员工信息
disable trigger T_add
启用
alter table 员工信息
disable trigger T_add
触发器递归