본문 바로가기
Back-end/DB

[MySQL] ON UPDATE CURRENT_TIMESTAMP 생성 방법

by 며루치꽃 2021. 3. 4.

MySQL에서 ON UPDATE CURRENT_TIMESTAMP란

데이터가 바뀔 때마다 자동으로 원하는 컬럼에 현재 시간으로 자동 업데이트 해주는 기능입니다.

보통 '생성시간' 과는 별개로 '수정시간'이 필요할 때 많이 사용하는 것 같습니다.

MySQL에서는 테이블 생성 당시에 해당 기능을 만들 수 있습니다

그리고 보통 테이블을 만들때에는 CRUD 할 때 createAt과 updatedAt을 구성하는 것으로 알고있기에 다음과 같이 구성하면 될 것 같습니다.

아래의 예는 User table을 만들때 createAt과 updatedAt을 컬럼으로 구성하는 방법입니다.

 

User

CREATE TABLE User
(
    `userIdx`     INT           NOT NULL    COMMENT '챌린지번호',  
    `createdAt`       TIMESTAMP     NOT NULL    DEFAULT CURRENT_TIMESTAMP,
    `updatedAt`       TIMESTAMP     NOT NULL    DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (userIdx)
);

 

댓글