PostgreSQL에서는

 

MySQL ON UPDATE CURRENT_TIMESTAMP 같은

 

테이블의 행(row)에 수정이 발생할 때,

 

지정하는 컬럼에 현재 시각을 업데이트 해주는 기능을 제공하지 않는다.

 

그래서 트리거(trigger) 활용하여 동일한 기능을 구현 할 수 있다.

 

/* 실행 시 수정시각 업데이트 할 함수 생성 &
위 생성하는 함수가 특정 테이블의 행(row)에 수정이 발생할 때,
실행하도록 할 트리거(trigger) 생성
*/

CREATE OR REPLACE FUNCTION 함수명()
RETURNS TRIGGER AS $$
BEGIN
    NEW.수정시각 업데이트할 컬럼명 = NOW();
    RETURN NEW;
END;
$$ LANGUAGE plpgsql;

CREATE TRIGGER 트리거명
BEFORE UPDATE ON 테이블명
FOR EACH ROW
EXECUTE FUNCTION 함수명();

 

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기