Bạn cũng có thể thử kiểm tra phiên bản của trình điều khiển Oracle jdbc và cơ sở dữ liệu Oracle. Mới hôm nay, tôi đã gặp sự cố này khi sử dụng ojdbc6.jar (phiên bản 11.2.0.3.0) để kết nối với máy chủ Oracle 9.2.0.4.0. Thay thế nó bằng ojdbc6.jar phiên bản 11.1.0.7.0 đã giải quyết được vấn đề.
Tôi cũng đã quản lý để kết nối ojdbc6.jar phiên bản 11.2.0.3.0 mà không bị lỗi, bằng cách thêm oracle.jdbc.timezoneAsRegion=false
trong tệp oracle / jdbc / defaultConnectionProperties.properties (bên trong jar). Tìm thấy giải pháp này ở đây (liên kết bị hỏng)
Sau đó, người ta có thể thêm -Doracle.jdbc.timezoneAsRegion=false
vào dòng lệnh hoặc AddVMOption -Doracle.jdbc.timezoneAsRegion=false
trong các tệp cấu hình sử dụng ký hiệu này.
Bạn cũng có thể làm điều này theo chương trình, ví dụ:với System.setProperty
.
Trong một số trường hợp, bạn có thể thêm biến môi trường trên cơ sở mỗi kết nối nếu điều đó được cho phép (Nhà phát triển SQL cho phép điều này trong thuộc tính kết nối "Nâng cao"; tôi đã xác minh nó hoạt động khi kết nối với cơ sở dữ liệu không gặp sự cố và sử dụng một liên kết cơ sở dữ liệu đến một cơ sở dữ liệu có).