Sie können auch versuchen, die Version des Oracle jdbc-Treibers und der Oracle-Datenbank zu überprüfen. Erst heute hatte ich dieses Problem, als ich ojdbc6.jar (Version 11.2.0.3.0) verwendete, um eine Verbindung zu einem Oracle 9.2.0.4.0-Server herzustellen. Das Ersetzen durch ojdbc6.jar Version 11.1.0.7.0 löste das Problem.
Ich habe es auch geschafft, ojdbc6.jar Version 11.2.0.3.0 fehlerfrei zu verbinden, indem ich oracle.jdbc.timezoneAsRegion=false
hinzugefügt habe in der Datei oracle/jdbc/defaultConnectionProperties.properties (im JAR). Habe diese Lösung hier gefunden (defekter Link)
Dann kann man -Doracle.jdbc.timezoneAsRegion=false
hinzufügen in die Befehlszeile oder AddVMOption -Doracle.jdbc.timezoneAsRegion=false
in Konfigurationsdateien, die diese Notation verwenden.
Sie können dies auch programmgesteuert tun, z. mit System.setProperty
.
In einigen Fällen können Sie die Umgebungsvariable pro Verbindung hinzufügen, wenn dies zulässig ist (SQL Developer lässt dies in den „Erweiterten“ Verbindungseigenschaften zu; ich habe überprüft, dass es funktioniert, wenn eine Verbindung zu einer Datenbank hergestellt wird, die das Problem nicht hat und verwendet ein Datenbank-Link zu einer Datenbank, die hat).