我有32位Win7,32位Office 2010和32位JDK 8u5并试图访问MS Acess数据库。当我尝试创建连接时,我得到java.sql.SQLException:找不到合适的驱动程序
这之间没有区别:
Connection konekcija = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=D:\\Marko\\NetBeansProjekat\\dnevnik.accdb");
创建名为" dnevnik"的ODBC数据源在Administtrative工具中使用它如下:
Connection konekcija = DriverManager.getConnection("jdbc:odbc:dnevnik");
在ODBC数据源中我安装了Microsoft Access驱动程序(* .mdb,* .accdb)。
这是抛出异常的整个方法
public static List<Odeljenje> vratiSvaOdeljenja(){
List<Odeljenje> result = new ArrayList<>();
try {
Connection konekcija = DriverManager.getConnection("jdbc:odbc:dnevnik");
String upit = "SELECT * FROM tOdeljenje";
Statement st = konekcija.createStatement();
ResultSet rs = st.executeQuery(upit);
while (rs.next()) {
long odeljenjeID = rs.getLong("OdeljenjeID");
String oznakaOdeljenja = rs.getString("OznakaOdeljenja");
Odeljenje o = new Odeljenje(odeljenjeID, oznakaOdeljenja);
result.add(o);
}
konekcija.close();
} catch (SQLException ex) {
Logger.getLogger(RadSaBazom.class.getName()).log(Level.SEVERE, null, ex);
}
return result;
}
提前谢谢你:)
答案 0 :(得分:3)
在Java8中删除了JDBC-ODBC Bridge。推理阅读this。
您可以专门为Access使用JDBC驱动程序,如UCanAccess。
有关UCanAccess的更多信息,请阅读this question。