zoukankan      html  css  js  c++  java
  • 数据库(触发器)

    -----------触发器
    --触发器本质上还是一个存储过程
    --只不过不是通过exec来调用执行,而是通过增删改数据库的操作来引发执行
    select *from student
    select *from score
    alter trigger TR_student_Delete
    on student
    --for Delete--因为先执行里面的在执行外面的 先删除后操作
    instead of delete--当删除时先引发触发器,用触发器里的操作替换本来的操作
    as

    delete from score where sno=108
    --insert into student values('108','曾鹏','男','1997-7-5','95033')
    delete from student where sno=108
    go
    delete from student where sno=108

    create trigger dongtaichufa
    on teacher
    instead of delete--删除的时候触发触发器
    as
    begin
    declare @tno varchar(20)
    set @tno=(select tno from deleted)
    update teacher set tname='张三'where tno=@tno
    end
    go
    delete from teacher where tno='825'
    select*from teacher
    create trigger TR_teacher_insert
    on teacher
    for insert
    as
    begin
    declare @tno varchar(20)
    set @tno=(select tno from inserted)
    delete @sex varchar(20)
    set @aex=(select tsex from teacher where tno=@tno)
    if @sex='男'
    update teacher set tsex='女'where tno=@tno

    else
    update teacher set tsex='男'where tno=@tno

    end
    go
    insert into teacher values('800','王五','男','1990-09-09','教授','计算机系')
    alter table teacher disable trigger all--禁用数据表的所有触发器
    alter table teacher enable trigger all--开启数据表的所有触发器

  • 相关阅读:
    关于控制地址控件的代码
    获取某个设计项列表界面上查询框中的值的代码
    js中不同值的替换
    js截取字符串方法实例
    抛异常语句的种类及区别
    从获取结果中去除重复记录
    泛微E8升级E9代码修改
    中控考勤数据转换
    WEB打印,分页首行自动带出栏目标题
    VS附加进程调试IIS网站
  • 原文地址:https://www.cnblogs.com/LCL390/p/4093745.html
Copyright © 2011-2022 走看看