source

Oracle jdbc 클라이언트의 기본 nls_date_format을 변경하는 방법

factcode 2023. 9. 11. 22:15
반응형

Oracle jdbc 클라이언트의 기본 nls_date_format을 변경하는 방법

Oracle 10.2 XE의 global nls_date_format을 다음과 같이 정의했습니다.

alter system set nls_date_format='YYYY-MM-DD HH24:MI:SS' scope=spfile;

Windows에서 연결할 때 클라이언트가 세션별 형식으로 덮어쓰기 때문에 세션을 시작할 때마다 다음 줄을 실행해야 합니다.

alter session set nls_date_format='YYYY-MM-DD HH24:MI:SS';

하지만 변경할 수 없는 커스텀 코드(jdbc code, ojdbc14.jar 사용)가 있어서 연결을 받을 때 이 라인을 실행할 수 없습니다.모든 jdbc 연결에 대해 nls_date_format의 기본값을 변경할 수 있는 방법이 있습니까?혹시 연결 문자열에 뭔가를 추가하거나, 내가 사용할 수 있는 환경 변수?

그런데 sqlplus와 sqldeveloper도 서버의 포맷을 자신들의 것으로 덮어쓰지만, 기본값을 변경하는 방법을 알게 되어 jdbc 연결에서만 문제가 발생합니다.

로그온 후 트리거에서 날짜 형식 설정

감사합니다, 잘됐네요.제가 삽입한 트리거는 다음과 같습니다.

CREATE OR REPLACE TRIGGER LOGINTRG
AFTER LOGON ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_DATE_FORMAT=''YYYY-MM-DD HH24:MI:SS''';
END LOGINTRG;

언급URL : https://stackoverflow.com/questions/447608/how-to-change-default-nls-date-format-for-oracle-jdbc-client

반응형