码迷,mamicode.com
首页 > 其他好文 > 详细

触发器

时间:2014-12-05 14:09:54      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:ar   sp   for   on   数据   bs   ad   ef   as   

触发器---特殊的存储过程,通过增减改数据来自动引发

create  trigger  TR_student_insert  (TR_表明_操作)

on student

for insert(for 是新增之后触发)

as

begin

end

go

----------------------------------------------------------

alter  trigger TR_student_insert
on student
for insert
as
begin
update student  set sname=‘大混蛋‘ where  sname=‘王八蛋‘
end
go
insert into Student values (304,‘王八蛋‘,‘男‘,‘1990-12-14‘,‘95031‘)
insert into Student values(306,‘大混蛋‘,‘男‘,‘1992-09-02‘,‘95035‘)
 select *from Student
 
alter trigger TR_student_delete
 on student
 instead of delete
 as
  begin
    declare @sno int
    select @sno=sno from deleted
    delete from score where sno=@sno
    delete from student where sno=@sno
  end
 go
 delete from Student where Sno=304
 select *from Student  insert into Score  values(304,‘3-105‘,98)
 select *from Score
 
 
 create trigger TR_student_inserted
 on student
 instead of insert
 as
 begin
 declare @sno int,@sname varchar(20),@ssex varchar(20),@sbirthday datetime,@class varchar(20)
 select @sno=sno,@sname=sname,@ssex=ssex,@sbirthday=sbirthday,@class=class from inserted
   if @ssex=‘男‘
   begin
     set @ssex=‘1‘
   end
 
 insert into student values (@sno,@sname,@ssex,@sbirthday,@class)
 end
 go
  insert into Student values(303,‘李白‘,‘男‘,‘1992-03-12‘,‘95033‘)
 select  *from Student

 
 inserted---临时表 ,获取数据 ,此题中  inserted  代替触发器外的insert。
 ---触发器中的insert是把执行后的inserted 插入到student表中

触发器

标签:ar   sp   for   on   数据   bs   ad   ef   as   

原文地址:http://www.cnblogs.com/wei270647220/p/4146443.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!