- BEFORE : INSERT, UPDATE, DELETE문이 실행되기 전에 트리거가 실행 된다.
- AFTER : INSERT, UPDATE, DELETE문이 실행된 후 트리거가 실행 된다.
- trigger_event : INSERT, UPDATE, DELETE 중에서 한 개 이상 올 수 있다.
- FOR EACH ROW : 이 옵션이 있으면 행 트리거가 된다.
-- 기존에 있던 기본 설정값을 삭제
ALTER TABLE post MODIFY modified_at TIMESTAMP NULL;
-- 트리거 추가
DELIMITER //
CREATE TRIGGER update_modified_timestamp
BEFORE UPDATE ON post
FOR EACH ROW
BEGIN
SET NEW.modified_at = NOW();
END;//
DELIMITER ;
-- 기존에 있던 기본 설정값을 삭제
ALTER TABLE post MODIFY created_at TIMESTAMP NULL;
-- 트리거 추가
DELIMITER //
CREATE TRIGGER update_timestamp
BEFORE INSERT ON post
FOR EACH ROW
BEGIN
SET NEW.created_at = NOW();
SET NEW.modified_at = NULL;
END;//
DELIMITER ;