java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常为什么?
对于Java 7,您可以仅省略该Class.forName()语句,因为它并不是真正需要的。
对于Java 8,您不能使用JDBC-ODBC Bridge,因为它已被删除。您将需要使用类似ucanaccess的名称。有关更多信息,请参见
在https://stackoverflow.com/q/21955256/2144390
解决方法我已经创建了一个MS Access数据库并为其分配了DSN。我想通过我的Java应用程序访问它。
这就是我在做什么:
public class AccessDbConnection { public static void main(String[] args) {System.out.println("**ACCESS DB CONNECTION**");try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // for MS Access ... MS access driver loading String conURL = "jdbc:odbc:sampleDNS"; Connection con = DriverManager.getConnection(conURL); Statement statement = con.createStatement(); String qry = "SELECT * FROM Table1"; ResultSet rs= statement.executeQuery(qry); while(rs.next()) {String id = rs.getString("ID") ;String fname = rs.getString("First_Name");String lname = rs.getString("Last_Name");System.out.println(id + fname + lname); }} catch (ClassNotFoundException ex) { System.out.println("Classforname Exception!!"); Logger.getLogger(AccessDbConnection.class.getName()).log(Level.SEVERE,null,ex);} catch (SQLException ex) { System.out.println("DriverManager Exception!!"); Logger.getLogger(AccessDbConnection.class.getName()).log(Level.SEVERE,ex);} }}
我在try块的第一行遇到了异常。那是class.forname('..');。为什么会有此异常?
相关文章:
1. javascript - 关于数组的循环遍历问题2. javascript - 正则匹配字符串特定语句后的数字3. 在cmd下进入mysql数据库,可以输入中文,但是查看表信息,不显示中文,是怎么回事,怎新手,请老师4. python - Pycharm调试代码进行列表遍历时,如何直接赋值指定元素5. javascript - 请指条明路,angular的$event,在select中却是undefined?6. java 线程池序号一直增加问题7. docker gitlab 如何git clone?8. java - 重载是不是多态??9. mysql优化 - mysql 多表联合查询,求一个效率最高的查询10. 微信支付 - python做微信企业付款出现CA证书错误

网公网安备