ORA-01882: タイムゾーンの地域が見つかりません 質問する

ORA-01882: タイムゾーンの地域が見つかりません 質問する

Java アプリケーションから Oracle データベースにアクセスしていますが、アプリケーションを実行すると次のエラーが発生します。

java.sql.SQLException: ORA-00604: 再帰SQLレベル1でエラーが発生しました ORA-01882: タイムゾーンの地域が見つかりません

ベストアンサー1

Oracle jdbc ドライバーと Oracle データベースのバージョンを確認することもできます。ちょうど今日、ojdbc6.jar (バージョン 11.2.0.3.0) を使用して Oracle 9.2.0.4.0 サーバーに接続したときにこの問題が発生しました。ojdbc6.jar バージョン 11.1.0.7.0 に置き換えると、問題は解決しました。

oracle.jdbc.timezoneAsRegion=falseまた、oracle/jdbc/defaultConnectionProperties.propertiesファイル(jar内)を追加することで、ojdbc6.jarバージョン11.2.0.3.0をエラーなしで接続できるようになりました。この解決策を見つけました。ここ(リンク切れ)

-Doracle.jdbc.timezoneAsRegion=false次に、この表記法を使用するコマンドラインまたはAddVMOption -Doracle.jdbc.timezoneAsRegion=false構成ファイルに追加できます。

System.setPropertyこれをプログラム的に行うこともできます。たとえば、 を使用します。

場合によっては、許可されていれば、接続ごとに環境変数を追加できます (SQL Developer では、「詳細」接続プロパティでこれを許可しています。問題が発生していないデータベースに接続し、問題が発生しているデータベースへのデータベース リンクを使用すると、これが機能することを確認しました)。

おすすめ記事