使用Jackcess打开Access数据库文件

时间:2015-04-23 09:58:43

标签: java eclipse-plugin eclipse-rcp jackcess

我正在使用Jackcess API将我的数据库复制到一个文件中。我成功建立了与我的数据库的连接,但是当我尝试打开数据库时,我得到一个空指针异常。

我的代码

File tempTarget=File.createTempFile("eap-mirror", "eap");     
String conString = EaDbStringParser.eaDbStringToJdbc(sourceString);
this.source=DriverManager.getConnection(conString);
this.source.setReadOnly(true);
try {
    FileUtils.copyFile(new File(templateFileString), tempTarget);
    System.out.println("file copied");
} catch (IOException e) {
    e.printStackTrace();
}

this.target=Database.open(tempTarget,false,false); //Cannot run this line

我无法运行Database.open方法,因此目标为null,抛出异常。

任何人都知道我做错了什么或需要什么?

由于

1 个答案:

答案 0 :(得分:1)

com.healthmarketscience.jackcess.Database没有.open方法(参考:here)。要在Jackcess中打开数据库文件,我们使用DatabaseBuilder.open,如

this.target = DatabaseBuilder.open(tempTarget);

编辑:

我从another question看到你正在尝试使用一个相当旧的1.x版本的Jackcess(1.2.6),它确实为Database对象提供了一个.open方法。你真的应该考虑使用更新的2.x版本的Jackcess。

相关问题