在写这篇文章之前,xxx已经写过了几篇关于改执行delete主题的文章,想要懂得的朋友可以去翻一下之前的文章

    

简介

    


    


    触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如

    对一个表进行操纵( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务

    则等。 触发器可以从 DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。(来自百度:原文链接 ) 从上述解释

    中,可以懂得到触发器类似于存储过程。但不像存储过程一样由程序调用,而是当更新、删除等对表进行操纵时会自

    动触发执行的sql语句。虽不严谨,但大致上就是这个意思。  

    

    

简单应用 

    


    

1.创建

    


CREATE TRIGGER TRIGGER_NAME           ON {TABLE_NAME | VIEW_NAME}           {FOR | After | Instead of }           [ INSERT, UPDATE,DELETE ]           AS           SQL_Statement

ps:Instead of 替代引发触发的sql语句。

    


    

    After:用于在执行完update、delete等操纵后执行的的sql语句。除此之外instead of可以应用于视图与表。而

    


    

after只能应用于表。

    


    

   2.删除

     
  DROP TRIGGER trigger_name

   3.查询

    每日一道理
如果只看到太阳的黑点,那你的生活将缺少温暖;如果你只看到月亮的阴影,那么你的生命历程将难以找到光明;如果你总是发现朋友的缺点,你么你的人生旅程将难以找到知音;同样,如果你总希望自己完美无缺,假设你的这一愿望真的能如愿以偿,那么你最大的缺点就是没有缺点。
     
   EXEC trigger_name


    

  示例演示

    


    

     1.Online_Info 与Offline_Info两个表

    


    

     2.当向Offline_Info插入数据时;同时将Online_Info表中的雷同卡号(CardNo)的一条数据删除。

    


    

     3.知识贮备:

    


    

      Delete、Insert表

    

      

    

      这两个表存在于内存中,并非像其他数据库的表存储在数据库中。他们总是与被触发器作用的表的内容一

    


    

致。当执行完触发器后,主动删除这两个表的数据。

    

       

    

创建触发器

    


      
CREATE TRIGGER deleteOnlineinfo ON Offline_Info
FOR INSERT
AS 
BEGIN
DELETE Online_Info FROM Online_Info ,inserted 
WHERE ONLINE_INFO.CardNo =inserted .CardNo 
END

当执行实现

    


    

     就会相应的表的触发器节点下生成相应的触发器如图

    


    

     执行delete触发器及示例演示_数据库

    


    

     当新建实现后,当我们向下机表中插入一条记录后。触发器就会主动删除在上机表中雷同卡号的数据。

    


    

     

    


    

   

    


文章结束给大家分享下程序员的一些笑话语录: 一个合格的程序员是不会写出 诸如 “摧毁地球” 这样的程序的,他们会写一个函数叫 “摧毁行星”而把地球当一个参数传进去。

--------------------------------- 原创文章 By
执行和delete
---------------------------------