• Oracle学习札记[1]触发器


     Oracle触发器案例代码:

    View Code
     
    CREATE OR REPLACE TRIGGER ISOK_UPDATE_HISTORY
      BEFORE UPDATE
      ON TECH_RTDB_POSITION_T
      FOR EACH ROW
      
    DECLARE
        -- local variables here
        t_WHMS   VARCHAR2(1000); --位号的描述
        t_ZZDM   VARCHAR2(40); --装置代码
        t_ZZMC   VARCHAR2(200); --装置名称
        t_DXZ    VARCHAR2(200); --低限值
        t_GXZ    VARCHAR2(200); --高限值
        t_D_DOWN VARCHAR2(200); --合理范围下限
        t_D_UP   VARCHAR2(200); --合理范围上限
        t_DW   VARCHAR2(40); --单位
        t_ISUSE  VARCHAR2(200); --是否启用
        t_DESCRIPTION  VARCHAR2(2000); --描述
      
    BEGIN
      
          IF :OLD.WHMS<>:NEW.WHMS THEN
           t_WHMS:='位号名称更新为:'||:NEW.WHMS||';';       
        END IF
        
          IF :OLD.ZZDM<>:NEW.ZZDM THEN
           t_ZZDM:='装置代码更新为:'||:NEW.ZZDM||';';       
        END IF
         
          IF :OLD.ZZMC<>:NEW.ZZMC THEN
           t_ZZMC:='装置名称更新为:'||:NEW.ZZMC||';';       
        END IF;
        
           IF :OLD.DXZ<>:NEW.DXZ THEN
           t_DXZ:='低限值更新为:'||to_char(:NEW.DXZ)||';';       
        END IF;
        
           IF :OLD.GXZ<>:NEW.GXZ THEN
           t_GXZ:='高限值更新为:'||to_char(:NEW.GXZ)||';';       
        END IF;
        
           IF :OLD.D_DOWN<>:NEW.D_DOWN THEN
           t_D_DOWN:='合理范围下限更新为:'||to_char(:NEW.D_DOWN)||';';     
        END IF;
        
           IF :OLD.D_UP<>:NEW.D_UP THEN
           t_D_UP:='合理范围上限更新为:'||to_char(:NEW.D_UP)||';';      
        END IF;
        
           IF :OLD.DW<>:NEW.DW THEN
           t_DW:='单位更新为:'||:NEW.DW||';';      
        END IF;
        
        IF :OLD.ISUSE<>:NEW.ISUSE THEN
           t_ISUSE:='是否启用:'||to_char(:NEW.ISUSE)||';';     
        END IF;
        
        t_DESCRIPTION:=t_WHMS||t_ZZDM||t_ZZMC||t_DXZ||t_GXZ||t_D_DOWN||t_D_UP||t_DW||t_ISUSE;
        
        INSERT INTO HISTORY_TECH_RTDB_POSITION_T(HISTORY_ID,INFO_ID,DESCRIPTION)
              VALUES(SEQ_HISTORY_ID.NEXTVAL,:OLD.BM,t_DESCRIPTION);
    END;
  • 相关阅读:
    Ubuntu 16.04 安装 .NET Core[转]
    SQL Server 2012提供的OFFSET/FETCH NEXT与Row_Number()对比测试 [T]
    npm package
    RN 文件上传下载
    RN css整理
    react nginx配置
    macOS安装homebrew报错 errno 54 & port 443:Connection refused
    shopify插件开发oauth报400的解决办法
    Mac下更新Ruby版本
    Failed to connect to raw.githubusercontent.com port 443 解决方案
  • 原文地址:https://www.cnblogs.com/SmileX/p/2241150.html
Copyright © 2020-2023  润新知