Oracle
 sql >> Database >  >> RDS >> Oracle

Come posso ottenere la regione del fuso orario da SQLPLUS?

Presumo che SQL Developer crei un implicito ALTER SESSION SET time_zone=... quando apri una nuova connessione.

Vedo diverse soluzioni:

  • Definisci la variabile di ambiente TZ sull'host client
  • Crea un trigger di database e imposta il fuso orario di conseguenza
  • Cambia il fuso orario del database:funziona a meno che un utente non imposti il ​​proprio fuso orario personale

Attivazione del database:

CREATE OR REPLACE TRIGGER LOG_T_LOGON 
   AFTER LOGON ON DATABASE
DECLARE

BEGIN
   IF ora_login_user IS NULL THEN 
      RETURN;
   END IF;
   IF ora_login_user IN (...) THEN -- Prevent to be executed for EACH user
      execute immediate 'ALTER SESSION SET time_zone = ''America/New_York''';
   END IF;
END;

FINE;