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()
);
'데이터베이스 > Postgresql' 카테고리의 다른 글
[PostgreSQL] random 데이터 생성 (0) | 2021.09.10 |
---|---|
[PostgreSQL] 시간 계산하기 (0) | 2021.09.09 |
[PostgreSQL] 시간 데이터타입 쿼리/함수 (0) | 2021.08.07 |
[PostgreSQL] 시퀀스 생성 및 사용 (0) | 2021.08.07 |
베큠 사용 postgresql 쓰레기 데이터 정리 (0) | 2021.07.28 |
댓글