2013-04-30 80 views
0

我寫這個代碼,但在運行時錯誤時拋出被捕獲並說Java連接使用的MS Access

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified 

問題是什麼?

String database="jdbc:odbc:Driver={Microsoft Access Driver(*.accdb)};DBQ=C:/Users/Amitav/Desktop/Database1.accdb;"; 

Connection con=DriverManager.getConnection(database,"",""); 
+0

嘗試使用ucanaccess而不是odbc只要按照這個http://stackoverflow.com/questions/21955256/manipulating-an-access-database-from-java-without-odbc][1] – user3808015 2014-09-11 09:54:25

回答

1

首先更換Driver={...}件以匹配Microsoft Access accdb ODBC Driver example from ConnectionString.com

Driver={Microsoft Access Driver (*.mdb, *.accdb)}; 

如果此更改不足以解決問題,則可能是ACE驅動程序和Java之間不匹配。 ACE驅動程序分爲32位和64位版本。您需要將ACE版本與Java(32或64位)進行匹配。

+0

我已經改變了驅動程序與來自ConnectionString.com的Microsoft Access accdb ODBC Driver示例相匹配的一段代碼。但它不能正常工作.. 請告訴在哪裏更改或選擇ACE驅動程序.... – 2013-05-01 05:39:47

+0

它不包含在Windows中。您可以單獨下載並安裝它:http://www.microsoft.com/en-us/download/details.aspx?id=13255 – HansUp 2013-05-01 05:45:37

+0

它完成了....非常感謝您的支持.... :) 你能告訴我這個ACE Driver有什麼改變嗎? – 2013-05-01 15:02:47