zoukankan      html  css  js  c++  java
  • MySQL和Oracle触发器

    当我们需要用到触发器的时候,还是很方便,你会指定当我在操作某一事件时触发效果完成我所希望完成的事情;这就是触发器

    触发器格式

    MySQL触发器格式

    CREATE TRIGGER trigger_name  
        BEFORE|AFTER INSERT|UPDATE|DELETE ON table_name  
        [FOR EACH ROW]  
    BEGIN  
    DECLARE arg_name1[,arg_name2,...] type [DEFAULT value]  
        sql语句  
    END
    

    Oracle触发器格式

    CREATE [OR REPLACE] TRIGGER trigger_name   
        BEFORE|AFTER INSERT|UPDATE|DELETE ON table_name   
        [FOR EACH ROW]  
    DECLARE arg_name type [CONSTANT] [NOT NULL] [:=value]   
    BEGIN  
        pl/sql语句  
    END 
    

    示例

    下面一个示例是我在删除某个数据库表数据时候,自动触发触发器备份数据表,并自动填充记录更新时间(UPDATE_TIME):

    MySQL版本

    create trigger 触发器名字
      before delete on 源表名
      for each row
    begin
      insert into 新表名(ID,表的字段)values(:old.id,:old.表的字段);
    end;
    

    Oracle版本

    create or replace trigger 触发器名字
      before delete on 源表名
      for each row
    begin
      insert into 新表名(ID,表的字段)values(:old.id,:old.表的字段);
    end;
    
  • 相关阅读:
    idea安装
    IntelliJ IDEA 简单使用
    git客户端安装
    一、AJAX
    一、JSP标签介绍,自定义标签
    注解
    线程
    网络编程Socket
    一 批量插入数据(使用批处理
    day87
  • 原文地址:https://www.cnblogs.com/fm98/p/15341424.html
Copyright © 2011-2022 走看看