可能重复:
Microsoft Access和Java的JDBC-ODBC错误
我有我的创造DB开始与问题。 我的Windows 7 64位版本,发现错误是与Microsoft Office是32位。 我能够用在C的odbcad32.exe的创建我的Access数据库:\ WINDOWS \ SYSWOW64 \ odbcad32.exe的
现在在我的Java代码我只是试图让连接的,但我遇到了问题,又似乎是相关的,并让我觉得顶多我只是没有设置数据库正确。 JavaDB之外是我在ODBC创建我的数据源名称:DSA,你可以在这里看到: http://i.imgur.com/9n19x.png
我一直在寻找所有在互联网上,但真的不能找到一个坚实明确的答案。 真的可以用帮助下,在先进的感谢!
编辑:我清理我的代码,现在我的错误是不同的。 我在我的项目文件夹我的物理数据库文件在C:\ Eclipse的\ PROJECT1的\ src - 我已经设置它也像我在ODBC说是相同的。
编辑编辑:嗯,研究几个小时我结束了之后只计算出来最后。 这些问题是没有那么多我的代码,因为它是与Windows x64BIT和Office 32个驱动程序的兼容性问题。 这篇文章帮助我解决它,现在它的作品! http://www.selikoff.net/2011/07/26/connecting-to-ms-access-file-via-jdbc-in-64-bit-java/
import java.sql.*;
public class DBTester {
public static void main(String[] args) throws SQLException, ClassNotFoundException {
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String fileName = "C:/Eclipse/school/bin/RegistrationDB.mdb";
String dB = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ="+fileName;
Connection connection = DriverManager.getConnection(dB,"","");
System.out.println("connected");
Statement s = connection.createStatement();
s.close();
connection.close();
} catch(Exception ex)
{
ex.printStackTrace();
}
} // end main
} // end class