2015-06-11 62 views
2

連接時,「沒有合適的驅動程序找到」錯誤我有下面的代碼,我根據這個帖子的 回答修改:嘗試與UCanAccess

Manipulating an Access database from Java without ODBC

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.ResultSet; 
import java.sql.SQLException; 
import java.sql.Statement; 


public class Main { 

    void reportTotalCopies(Connection connection) 
    { 
     try{ 
     Statement statement1 = connection.createStatement(); 
     Statement statement2 = connection.createStatement(); 
     String Sql = "SELECT [Κωδικός], [Τίτλος], [Πλήθος Αντιγράφων] FROM [Βιβλίο] "; 

     ResultSet set1 = statement1.executeQuery(Sql); 
     while (set1.next()) 
     { 
      int code = set1.getInt(1); 
      String title = set1.getString(2); 
      int copies = set1.getInt(3); 
      Sql = "SELECT COUNT(Δανεισμός." 
       + "[Αριθμός Ταυτότητας Μέλους]) " 
       + "AS [Δανεισμένα] " 
       + "FROM Δανεισμός " 
       + "WHERE Δανεισμός.[Κωδικός Βιβλίου] = " 
       + code 
       + " GROUP BY Δανεισμός.[Κωδικός Βιβλίου]"; 
      ResultSet set2 = statement2.executeQuery(Sql); 
      if (set2.next()) 
       copies += set2.getInt(1); 
      System.out.printf("%-60s%d\n", title, copies); 
     } 
     } 
     catch(SQLException ex){ 
      while(ex != null){ 
       ex.getMessage(); 
       ex.getNextException(); 

      } 
     } 
    } 

    public static void main(String args[]) { 


     try { 
      Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); 
      //String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + filename + ";DriverID=22;READONLY=true}"; 
      String database = "jdbc:ucanaccess:\"Library.accdb\""; 
      Connection con = DriverManager.getConnection("jdbc:ucanaccess:C:\\JavaBooks\\Java12\\Library.mdb"); 
      new Main().reportTotalCopies(con); 
      //new Java1202().reportBooksByMember(connection); 
      con.close(); 
     } catch (Exception ex) { 
      ex.printStackTrace(); 
      System.out.println("Here"); 
     } 
    } 
} 

,我得到以下錯誤從運行它...

java.sql.SQLException: No suitable driver found for jdbc:ucanaccess:C:\JavaBooks\Java12\Library.mdb 
    at java.sql.DriverManager.getConnection(Unknown Source) 
    at java.sql.DriverManager.getConnection(Unknown Source) 
    at Main.main(Main.java:52) 

我也包括在Eclipse爲UCanAccess 5個JAR文件構建路徑。

什麼可能導致問題?

+0

我得到同樣的錯誤,當我與圖書館嘗試。 accdb文件! –

+0

如果我不在eclipse中運行程序,我應該在哪裏粘貼5個.jar文件以編譯和運行Powershell上的程序? –

回答

3

的JDBC URL是錯誤的,你失去了//

的jdbc:ucanaccess:// C:\ JavaBooks \ java12目錄\ Library.mdb