Saya berasumsi Pengembang SQL membuat ALTER SESSION SET time_zone=...
saat Anda membuka koneksi baru.
Saya melihat beberapa solusi:
- Tentukan variabel lingkungan
TZ
di host klien - Buat pemicu basis data dan atur zona waktu yang sesuai
- Ubah zona waktu basis data - berfungsi kecuali ada pengguna yang menetapkan zona waktu pribadinya
Pemicu Basis Data:
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;
SELESAI;