hyeonga_code

Database_72_DATETIME 응용_데이터베이스 기반, 사용자 세션 날짜 본문

Oracle Database

Database_72_DATETIME 응용_데이터베이스 기반, 사용자 세션 날짜

hyeonga 2023. 8. 24. 05:59
반응형

-- DATETIME TYPE
    -- 데이터베이스 기반
        -- 세계 표준 시간은 Greenwitch입니다.
        -- SYSDATE
            -- 데이터베이스의 현재 날짜를 DATE 데이터 유형으로 반환합니다.
            -- 시간 정보를 보기 위해 TO_CHAR 함수를 사용한 형변환이 필요합니다.
        -- SYSTIMESTAMP
            -- 데이터베이스의 현재 날짜와 시간을 TIMESTAMP WITH TIME ZONE 데이터 유형으로 반환합니다.
            /*
            SELECT sysdate, systimestamp
            FROM dual;
            */
    -- 사용자 세션의 날짜
        -- CURRENT_DATE
            -- 유저 세션의 현재 날짜를 DATE 데이터 유형으로 반환합니다.
        -- CURRENT_TIMESTAMP
            -- 유저 세션의 현재 날짜와 시간을 TIMESTAMP WITH TIME ZONE 데이터 유형으로 반환합니다.
        -- LOCALTIMESTAMP
            -- 유저 세션의 현재 날짜와 시간을 TIMESTAMP 데이터 유형으로 반환합니다.
        /*
        SELECT CURRENT_DATE, CURRENT_TIMESTAMP, LOCALTIMESTAMP
        FROM dual;
        */
    
-- 시스템 세션 날짜 ( 서버가 위치한 지역의 시간대 )
SELECT sysdate, systimestamp
FROM dual;
        -- 시간을 자세하게 기록하기 위해 6자리로 표시합니다.


    
-- 시간 간결하게 표기하기
    -- 도구 > 환경설정
        -- > 데이터베이스 > NLS
        -- 시간 기록 형식 : TIMESTAMP
        -- 시간 기록 TZ 형식
            -- XFF : 시간을 6자리로 보여주는 기능입니다.

SELECT sysdate, systimestamp
FROM dual;
        -- 시간을 자세하게 기록하기 위해 6자리로 표시합니다.


    
-- 사용자 세션 날짜 (현재 위치한 지역의 시간대 )
SELECT CURRENT_DATE, CURRENT_TIMESTAMP, LOCALTIMESTAMP
FROM dual;
        -- CURRENT_DATE 로도 시간을 확인할 수 있습니다.
            -- TO_CHAR( )



    -- TIME_ZONE 세션 파라미터
        -- ALTER SESSION 명령을 사용하여 유저 세션의 시간대 값을 변경할 수 있습니다.
        -- 시간대 값
            -- '+09:00' : 절대 오프셋
            -- 'America/New_York' : 지정 이름 시간대
            -- dbtimezone : 데이터베이스 시간대
            -- local : 로컬 시간대
            -- sessiontimezone : 현재 세션의 시간대
-- 데이터베이스 시간대와 -10시간 차이가 나는 시간대로 세션을 변경합니다.
ALTER SESSION SET time_zone='-10:00';
    /*
    Session이(가) 변경되었습니다.
    */

-- 시스템 세션 날짜 ( 서버가 위치한 지역의 시간대 )
SELECT sysdate, systimestamp
FROM dual;



-- 사용자 세션 날짜 (현재 위치한 지역의 시간대 )
SELECT CURRENT_DATE, CURRENT_TIMESTAMP, LOCALTIMESTAMP
FROM dual;




-- 데이터베이스 시간대와 +1시간 차이가 나는 시간대로 세션을 변경합니다.
ALTER SESSION SET time_zone='+1:00';
    /*
    Session이(가) 변경되었습니다.
    */

-- 시스템 세션 날짜 ( 서버가 위치한 지역의 시간대 )
SELECT sysdate, systimestamp
FROM dual;



-- 사용자 세션 날짜 (현재 위치한 지역의 시간대 )
SELECT CURRENT_DATE, CURRENT_TIMESTAMP, LOCALTIMESTAMP
FROM dual;




















반응형