본문 바로가기
데이터베이스/Postgresql

[PostgreSQL] 트리거 생성

by cbwstar 2021. 9. 7.
728x90
반응형

PostSQL 트리거 생성한 후에 프로시저를 호출하여 처리한다.

 

-- 트리거 생성

CREATE TRIGGER TG_N_MENU_ATCHMNFL_M_AR

AFTER INSERT OR UPDATE ON TN_MENU_ATCHMNFL_M

FOR EACH ROW

EXECUTE PROCEDURE TG_PR_N_MENU_ATCHMNFL_M_AR();

 

-- 트리거 삭제(트리거이름 ON 테이블이름)

DROP TRIGGER IF EXISTS TG_N_MENU_ATCHMNFL_M_AR ON TN_MENU_ATCHMNFL_M;

 

-- 트리거 프로시저(FUNCTION)

CREATE OR REPLACE FUNCTION TG_PR_N_MENU_ATCHMNFL_M_AR()

RETURNS TRIGGER

AS $$

DECLARE

BEGIN

INSERT INTO TH_MENU_ATCHMNFL_M

    (

      MENU_ID,

      HIST_SN,

      ATCHMNFL_POSBL_MG,

      DEL_YN,

      REGISTER_ID,

      REG_DT

    )

    VALUES

    (

      NEW.MENU_ID,

      nextval('SQ_HIST_NO'),

      NEW.ATCHMNFL_POSBL_MG,

      NEW.DEL_YN,

      NEW.UPDUSR_ID,

      NOW()

    );

    RETURN NULL;

END; $$

LANGUAGE 'plpgsql';

 

 

select *

  FROM TH_MENU_ATCHMNFL_M;

 

SELECT *

  FROM TN_MENU_ATCHMNFL_M;

 

 update TN_MENU_ATCHMNFL_M

   set del_yn = 'Y';

 

 

INSERT INTO TN_MENU_ATCHMNFL_M

    (

      MENU_ID,

      ATCHMNFL_POSBL_MG,

      DEL_YN,

      REGISTER_ID,

      REG_DT,

      updusr_id ,

      mdfcn_dt

    )

    VALUES

    (

      'TEST3',

      '1',

      'N',

      'SYSTEM',

      NOW(),

      'SYSTEM',

      NOW()

    );

 

728x90
반응형

댓글



"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

loading