我正在尝试使用以下例程
建立JDBC-ODBC连接private static Connection getConnection(String systemDSN, String username, String password) throws Exception {
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:" + systemDSN;
Class.forName(driver);
return DriverManager.getConnection(url, username, password);
}
这是我得到的完整堆栈跟踪!
java.sql.SQLException: General error at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
任何人都可以告诉我这是怎么造成的,以及如何解决这个问题?!
答案 0 :(得分:0)
想知道这是否可能是另一个比特问题?
如果这是一个64位系统,那么Java运行时的位数很重要!!!!
64位Java运行时只能访问64位ODBC驱动程序...
32位Java运行时只能访问32位ODBC驱动程序...
32位和64位ODBC环境不一样......
答案 1 :(得分:0)
寻找"一般错误"的答案我终于发现它是数据源名称的问题。
jdbc:odbc:xx
其中xx
是数据源名称而非数据库名称
它适用于我!