zoukankan      html  css  js  c++  java
  • 触发器

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

    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表中

  • 相关阅读:
    第十二周作业
    十一周作业
    第十周作业
    第九周作业
    2019年春第八周作业
    第五周课程总结&实验报告(三)
    第四周课程总结&实验报告(二)
    第三周课程总结&实验报告(一)
    第二周课程总结
    2019春总结作业
  • 原文地址:https://www.cnblogs.com/wei270647220/p/4146443.html
Copyright © 2011-2022 走看看