MySQL에서 NOW() 함수는 현재 날짜와 시간을 반환하며, 이를 활용하면 타임스탬프(timestamp) 필드에 손쉽게 현재 시각을 저장할 수 있습니다. 이번 글에서는 MySQL Workbench 환경에서 타임스탬프 필드에 NOW()를 적용하는 방법을 단계별로 살펴보겠습니다.
1. 테이블 생성
먼저 타임스탬프 타입의 컬럼을 포함하는 테이블을 생성합니다.
create table DemoTable
(
Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
ShippingDate timestamp
);위 테이블은 자동 증가하는 기본키 Id와 배송 날짜를 저장할 ShippingDate 컬럼으로 구성되어 있습니다.
2. NOW()를 사용한 데이터 삽입
INSERT 명령으로 레코드를 추가할 때, NOW() 함수를 사용하여 현재 날짜와 시간을 함께 저장할 수 있습니다.
INSERT INTO DemoTable(ShippingDate) VALUES(now());
3. 데이터 조회
SELECT 문을 사용하여 테이블에 저장된 모든 레코드를 확인합니다.
SELECT * FROM DemoTable;
출력 결과
쿼리 실행 결과, ShippingDate 필드에 NOW()가 반환한 현재 날짜와 시간이 정상적으로 저장된 것을 확인할 수 있습니다.
다음은 MySQL Workbench에서 타임스탬프 필드 "ShippingDate"에 NOW()를 설정하는 쿼리 화면입니다. 쿼리 하단에는 실행 결과도 함께 표시됩니다.
참고: DEFAULT CURRENT_TIMESTAMP 활용하기
매번 INSERT 시 NOW()를 직접 작성하는 것이 번거롭다면, 테이블 생성 시 컬럼 기본값으로 CURRENT_TIMESTAMP를 지정하는 방법도 있습니다.
create table DemoTable2
(
Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
ShippingDate timestamp DEFAULT CURRENT_TIMESTAMP
);이렇게 설정하면 별도로 값을 지정하지 않아도 레코드가 삽입되는 순간의 현재 시각이 자동으로 저장되므로, 로그 기록이나 생성/수정 시간 관리에 매우 유용합니다.