oracle未找到时区,如何设置JDBC连接的时区区域并避免找不到SqlException时区区域?...

我在尝试创建一个 Connection 对象来处理来自命令行Java应用程序和Oracle数据库的连接时遇到以下问题。

因此,我有一个 Main 类,其中包含 main() 方法,这是一个:

import java.sql.*;

import oracle.jdbc.OracleDriver;

public class Main {

public static void main(String[] args) {

System.out.println("Hello World !!!");

String partitaIVA = args[0];

String nomePDF = args[1];

Connection conn = null;

Statement stmt = null;

try {

Class.forName ("oracle.jdbc.OracleDriver");

// Step 1: Allocate a database "Connection" object

conn = DriverManager.getConnection("jdbc:oracle:thin:@XXX.XXX.XXX.XXX:1521:eme1", "myUserName", "myPswd"); // Oracle DB

} catch(SQLException ex) {

ex.printStackTrace();

} catch (ClassNotFoundException e) {

e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.

}

}

}

问题是当我尝试执行此指令时:

conn = DriverManager.getConnection("jdbc:oracle:thin:@XXX.XXX.XXX.XXX:1521:eme1", "myUserName", "myPswd"); // Oracle DB

我得到这个异常:

java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1

ORA-01882: timezone region not found

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:392)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:385)

at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:1018)

at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:497)

at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:522)

at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)

at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:433)

at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:950)

at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:639)

at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:662)

at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)

at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:560)

at java.sql.DriverManager.getConnection(DriverManager.java:582)

at java.sql.DriverManager.getConnection(DriverManager.java:185)

at Main.main(Main.java:21)

因此,我记得在其他与此数据库一起使用的应用程序中,有必要设置时区或类似的内容(但现在我无法访问这些应用程序)。

那么,如何解决此问题?我可以通过编程方式设置连接的时区吗?

特纳克斯

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值