Я не могу запустить свою программу

#java #ms-access #jdbc

#java #ms-access #jdbc

Вопрос:

 Exception in thread "main" java.sql.SQLException: No suitable driver found for jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=student.mdb;DriverID=22;READONLY=true
    at java.sql.DriverManager.getConnection(DriverManager.java:689)
    at java.sql.DriverManager.getConnection(DriverManager.java:270)
    at withoutdsn.Main.main(Main.java:26)
Java Result: 1
 

Комментарии:

1. для того, чтобы jdbc работал, вы должны импортировать файл .jar в свою программу.

2. Какую версию Java вы используете?

Ответ №1:

Чтобы успешно выполнить соединение с базой данных через Java, например, если вы используете mysql, выполните следующие действия:

Перейдите на веб-сайт mysql и загрузите соответствующий драйвер для Java. Затем перейдите в Проект -> Свойства -> Путь сборки Java -> Библиотеки (в Eclipse) и нажмите «добавить внешние банки». Добавьте .jar, который вы загрузили. Прежде чем делать что-либо еще, вы должны убедиться, что правильно настроили свое соединение.

Например:

 //the default port of mysql is 3306
String url = "jdbc:mysql://127.0.0.1:3306/mydb";
String login = "root";
String passwd = "toor";

Connection cn = null;
Statement st = null;
ResultSet rs = null;

System.out.println("Connecting to database..");

try {

    cn = DriverManager.getConnection(url, login, passwd);
    System.out.println("Database Connected");

    st = cn.createStatement();
    String sql = "SELECT * FROM impacts";
    rs = st.executeQuery(sql);
    while (rs.next()){
            //do something
      }
  }catch(Exception e){
       System.out.println("Exception");
  }finally{
       if (cn != null ){
       cn.close();
        }         
  }
 

Ответ №2:

Используете ли вы Java 8 и драйвер моста JDBC-ODBC? Драйверы моста устарели и недоступны в Java 8. Смотрите здесь .

Если вы хотите запускать простые программы JDBC, вместо MS Access вы можете попробовать использовать Java DB. Вероятно, Java DB лучше всего работает с Netbeans IDE. Здесь есть хороший учебник.