Access資料庫連線錯誤解決辦法

64位Windows系統連線Access資料庫,程式中可能需要修改Access資料庫連線:

32位:String strUrl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=c://demo.mdb"

64位:String strUrl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=c://demo.mdb"

修改後仍報錯則進入“控制面板”-》“管理工具”-》“資料來源(ODBC)”檢視系統是否存在Access驅動

若不存在則需要安裝Microsoft Access驅動程式:

官方:
       http://www.microsoft.com/zh-cn/download/confirmation.aspx?id=13255

32位:
       http://download.microsoft.com/download/E/4/2/E4220252-5FAE-4F0A-B1B9-0B48B5FBCCF9/

AccessDatabaseEngine.exe

64位:
       http://download.microsoft.com/download/E/4/2/E4220252-5FAE-4F0A-B1B9-0B48B5FBCCF9/

AccessDatabaseEngine_X64.exe

下面是連線access的.mdb檔案,解析程式碼:

package test; import java.io.File; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.Statement; import java.util.Properties; public class Test {  /**  * TODO : 讀取檔案access  *   * @param filePath  * @return  * @throws ClassNotFoundException  */   public static void readFileACCESS(File mdbFile) {   Properties prop = new Properties();   prop.put("charSet", "gb2312"); // 這裡是解決中文亂碼   prop.put("user", "");   prop.put("password", "");   //String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="   mdbFile.  getAbsolutePath();   String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ="  mdbFile.  getAbsolutePath();   Statement stmt = null;   ResultSet rs = null;   String tableName = null;   try {   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");   // 連線到mdb檔案   Connection conn = DriverManager.getConnection(url, prop);   ResultSet tables = conn.getMetaData().getTables(   mdbFile.getAbsolutePath(), null, null,   new String[] { "TABLE" });   // 獲取第一個表名   if (tables.next()) {   tableName = tables.getString(3);// getXXX can only be used once   } else {   return;   }   stmt = (Statement) conn.createStatement();   // 讀取第一個表的內容   rs = stmt.executeQuery("select * from "   tableName);   ResultSetMetaData data = rs.getMetaData();   while (rs.next()) {   for (int i = 1; i <= data.getColumnCount(); i  ) {   System.out.print(rs.getString(i)   " ");   }   System.out.println();   }   } catch (Exception e) {   e.printStackTrace();   }   }     public static void main(String[] args) {   readFileACCESS(new File("C://Users//Ninemax//Desktop//西太區醫學索引.mdb"));   }  }

   

python學習網,大量的免費access資料庫教程,歡迎線上學習!

以上就是Access資料庫連線錯誤解決辦法的詳細內容,更多請關注其它相關文章!

更多技巧請《轉發 關注》哦!