zoukankan      html  css  js  c++  java
  • 【SQL触发器】类型 FOR 、AFTER、 Instead of

    1、AFTER(for)触发器 (操作后)

    after触发器是指在操作成功后,所采取的一些动作!

    比如:下面是我创建好的一个after触发器

    creat trigger [dbo].[T_CaregoryDelete] --触发器的名字为T_CaregoryDelete on [dbo].[caregory] --是caregory类别表的触发器 
    after delete --after代表执行删除后执行as后边的语句 
    
    as 
    
    begin 
    delete news where caId=(select id from deleted) --激发触发器后我要执行的动作,其中deleted是一个系统默认临时表 
    
    end

    2、instead of 触发器

    对数据的操作只是一个“导火索”而已,真正起作用的是触发器里面的动作;往往这种触发器会有很多分支判断语句在里面,根据不用的条件做不同的动作!

    INSTEAD OF 触发器用来代替通常的触发动作,即当对表进行INSERT、UPDATE 或 DELETE 操作时,系统不是直接对表执行这些操作,而是把操作内容交给触发器,让触发器检查所进行的操作是否正确。如正确才进行相应的操作。因此,INSTEAD OF 触发器的动作要早于表的约束处理。

    真正起作用的是触发器里面的动作,接下来是对应触发器的代码

    CREATE trigger [dbo].[T_CaregoryDelete] on [dbo].[caregory] 
    instead of delete 
    as 
    begin 
    
    delete news where caId=(select id from deleted) 
    delete caregory where id=(select id from deleted) 
    
    end

    后记:

    after触发器是在操作成功后,所采取的一些动作
    而对于instead of触发器,真正起作用的是触发器里面的动作!

  • 相关阅读:
    常用的排序方法
    mongoose 操作
    formidable使用
    cors跨域(支持cookie跨域) node后台 express
    mongoose Schema写法
    vue生命周期钩子 (mounted 加载数据没有缓存用 activated 配合keep-alive组件)
    vue路由跳转 页面回到顶部
    RESTful风格的路由设计
    router-link 绑定事件不生效
    axios的Content-Type类型导致后台无法解析数据
  • 原文地址:https://www.cnblogs.com/Fooo/p/10488221.html
Copyright © 2011-2022 走看看