使用Java连接到Oracle DSN时出错

问题描述:

我需要开发一个使用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

创建系统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

入住Eclipse项目