2009-08-25 70 views
1

我需要開發一個使用Microsoft ODBC驅動程序連接到各種DSN的應用程序。我在Eclipse中開發了這個應用程序,它似乎正常工作。連接成功,我可以查看錶格數據。使用Java連接到Oracle DSN時出錯

但是,當我將項目導出到可運行jar文件(使用Eclipse)時,Oracle的功能失敗。它無法與Oracle連接字符串建立連接。它仍然適用於SQL服務器,但在Oracle的情況下失敗。我無法找出原因,因爲Oracle和SQL-Server都使用相同的ODBC驅動程序。更神祕的是它在Eclipse上正常運行。由於即時通訊使用ODBC驅動程序,我不相信問題是由於外部的jar文件。

驅動程序是sun.jdbc.odbc.JdbcOdbcDriver,連接字符串是jdbc:odbc:oratest;user=fell;password=pass

我得到以下異常

java.sql.SQLException: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified 
    at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6958) 

能否請您幫助我的問題可能是什麼?

由於提前, 下跌

+0

是'oratest' 「系統DSN」 或 「用戶DSN」 類路徑? – 2009-08-25 13:29:08

+0

其系統DSN .. – Fell 2009-08-25 16:37:41

回答

2

創建系統DSN。

java.sql.Connection cn; 
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
cn=java.sql.DriverManager.getConnection("jdbc:odbc:dsn_name","user","pass"); 
+0

酷..感謝了很多... 現在工作得很好! – Fell 2009-08-25 13:53:41

0

入住Eclipse項目