ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver, как это исправить

это дает исключение java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver

int row=0;
    try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        Con=DriverManager.getConnection("jdbc:odbc:MSDB");
        stmt=Con.createStatement();
        String sql="select c_name from candidates";
        RS=stmt.executeQuery(sql);
        while(RS.next())
        {
            String name=RS.getString("c_name");
            c1.addItem(name);
            row++;
        }
       }
    catch (Exception ex) {
        JOptionPane.showMessageDialog(null,"" + ex);ex.printStackTrace();
       }

person Sana ullah    schedule 11.05.2014    source источник
comment
Является ли JAR, содержащий указанный класс, на вашем пути сборки?   -  person Kon    schedule 11.05.2014
comment
Мост JDBC-ODBC был удален в Java8. См. эту публикацию.   -  person user432    schedule 11.05.2014
comment
Если вы используете Java 8 и вам нужно манипулировать базой данных Access, вас может заинтересовать соответствующий вопрос здесь .   -  person Gord Thompson    schedule 12.05.2014


Ответы (1)


официальные позиции Sun и Oracle уже давно заключаются в том, что --

мост JDBC-ODBC [в комплекте с JVM] следует рассматривать как переходное решение [...] Oracle [было Sun] не поддерживает мост JDBC-ODBC.

Однако мой работодатель, OpenLink Software, выпускает коммерческие мосты типа 1 корпоративного уровня между JDBC и ODBC, начиная с JVM 1.0. , и они полностью совместимы с текущей версией JVM 1.8. Вы можете узнать больше здесь --

person TallTed    schedule 08.04.2015