MYSQL 创建触发器

浏览: 1138

DROP TRIGGER IF EXISTS TRI_BAS_MEMBER_LEASE_ORG_D_I;

DELIMITER $

CREATE TRIGGER FDP.TRI_BAS_MEMBER_LEASE_ORG_D_I

  AFTER INSERT

  ON FDP.BAS_MEMBER_LEASE_ORG_D

  FOR EACH ROW

BEGIN

  DECLARE ORG_TYPE_COPY   CHAR(1);

  SET ORG_TYPE_COPY      = (SELECT

                            ORG_TYPE

                            FROM

                            FDP.MEMBER_LEASE_ORG_D

                            WHERE

                            ARTIFICIAL_FLAG = 1 AND

                            ORG_CODE = NEW.ORG_CODE

                            ORDER BY

                            LAST_MODIFY_DATET DESC

                            LIMIT

                            0, 1);  --  变量名不能和字段名相同

  INSERT INTO

    FDP.MEMBER_LEASE_ORG_D(

      ORG_CODE

     ,ORG_CN_NAME

     ,ORG_SHORT_NAME

     ,ORG_EN_NAME

     ,EXCHANGE

     ,ORG_TYPE

     ,UNIQUE_ORG_CODE

     ,SCD_IND

     ,ARTIFICIAL_FLAG

     ,START_DATET

     ,END_DATET)

  VALUES

    (

      NEW.ORG_CODE

     ,NEW.ORG_CN_NAME

     ,NEW.ORG_SHORT_NAME

     ,NEW.ORG_EN_NAME

     ,NEW.EXCHANGE

     ,IF(

        ORG_TYPE_COPY

       ,NULL

       ,NEW.ORG_TYPE)

     ,NEW.UNIQUE_ORG_CODE

     ,NEW.SCD_IND

     ,0

     ,NEW.START_DATET

     ,NEW.END_DATET);

END;$

DELIMITER ;

推荐 0
本文由 楚天歌 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册