【发布时间】:2014-02-25 22:14:50
【问题描述】:
我想从 netezza 数据库中获取我的 java 代码中的一些数据,将其保存在内存中,然后切换到 oracle 数据库并运行一些分析。但是,当我尝试切换到下面的第二个数据库时,出现以下错误:
org.netezza.util.PSQLEexception: Invalid URL format
我做错了什么?我认为切换Class.forName 就足够了。
请注意 - 我可以单独设置 oracle 连接(当我不做 netezza 时)。但是当我尝试从 netezza 切换到 Oracle 时出现问题
Class.forName("org.netezza.Driver");
System.out.println(" Connecting ... ");
conn = DriverManager.getConnection(url, user, pwd);
System.out.println("Connected "+ conn);
PreparedStatement pstat = conn.prepareStatement("some query");
ResultSet rstru = pstat.executeQuery();
while(rstru.next()){
//Do some thing
}
rstru.close();
if(conn != null) conn.close();
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Connecting to Oracle");
conn = DriverManager.getConnection("some other url", "user2", "passwrd2");
System.out.println("Connected "+ conn);
pstat = conn.prepareStatement("second query");
rstru=pstat.executeQuery();
【问题讨论】:
-
嗯...您的 URL 格式不正确。
Class.forName()对 JDBC 驱动程序所做的所有事情就是注册它们。 -
是的,但是当我现在尝试连接到 oracle 时,它给了我一个 netezza 异常。
-
我不知道 netezza,但它似乎抛出异常而不是跳过它不理解的 URL。
-
1. Class.forName() 是不必要的,并且已经使用了十年或更长时间。现在删掉就好了。 2.您遇到的错误是什么?
-
我可以单独设置oracle连接(当我不做netezza的时候)。但是当我尝试从 netezza 切换到 Oracle 时,问题就出现了。
标签: java database jdbc database-connection