상세 컨텐츠

본문 제목

데이터 입력시 DB서버시간이 한국시간이 아닌 GTM일때 처리방법

데이터베이스

by 김일국 2021. 6. 9. 22:03

본문

데이터 입력시 DB서버시간이 한국시간이 아닌 GTM/UTC(글로벌타임)일때,

한국 시간으로 회원등록시간이나, 게시물등록시간을 처리해야 합니다.

방법은 2가지가 있습니다.

-- ========================================================

--오라클일때(아래)

-- ========================================================

/* 표준 시간대 파일 조회*/
SELECT * FROM v$timezone_names;
/* 세션 시간대 확인 */
select sessiontimezone from dual;
/* DB 시간대 확인 */
select dbtimezone from dual;

/* DB 시간대 바꾸기 */

ALTER SESSION SET NLS_TIMESTAMP_TZ_FORMAT ='YYYY.MM.DD HH24:MI:SS TZR TZD';
ALTER SESSION SET TIME_ZONE = 'Asia/Seoul';
SELECT current_timestamp FROM dual;

/* DB 시간대 바꾸기 않될때 */

SELECT DATE_ADD(NOW(3), INTERVAL 9 HOUR);--입력시 사용방법

-- ========================================================

--Mysql(마리아DB)일때(아래)

-- ========================================================

/* DB 시간대 확인 */

select @@global.time_zone, @@session.time_zone;

/* DB 시간대 바꾸기 */

SET GLOBAL time_zone='Asia/Seoul';
SET time_zone='Asia/Seoul';

/* DB 시간대 바꾸기 않될때 */

SET GLOBAL time_zone='+09:00';
SET time_zone='+09:00';--설정이 가능할때 사용

SELECT TO_CHAR(systimestamp + numtodsinterval( 9, 'HOUR' ), 'YYYY-MM-DD HH24:MI.SS.FF4')  from dual;--입력시 사용

관련글 더보기

댓글 영역