首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用java创建时,.mdb无法打开

问使用java创建时,.mdb无法打开
EN

Stack Overflow用户
提问于 2015-08-02 12:04:23
回答 1查看 105关注 0票数 0

当我使用MS-ACCESS数据库文件时,我正在使用java创建.mdb文件。但我面临着一个问题。假设使用new File(" file.mdb ").createNewFile();创建了一个名为file.mdb的文件。毫无疑问,它成功地创建了文件,但当我尝试打开它时,它显示无法识别的文件。你能帮帮我吗?

如果你不知道这个解决方案,那么告诉我任何其他创建数据库文件的数据库的知识(例如oracle不创建数据库文件),这样我就可以通过java创建该文件并访问它。

EN

回答 1

Stack Overflow用户

发布于 2015-08-02 23:07:36

正如您已经发现的,new File("file.mdb").createNewFile();会创建一个长度为零的文件,而该文件不是有效的Access数据库文件。即使是“空的”Access数据库也包含系统表和其他所需的信息。

如果您使用的是UCanAccess JDBC驱动程序,则只需执行以下操作即可自动创建数据库(如果该数据库尚不存在):

代码语言:javascript
复制
String connStr = "jdbc:ucanaccess://C:/path/to/file.mdb;newdatabaseversion=V2003";
try (Connection conn = DriverManager.getConnection(connStr)) {
    // ... do stuff here
}

有关如何设置UCanAccess的更多信息,请参阅

Manipulating an Access database from Java without ODBC

另一方面,如果您绝对需要使用JDBC-ODBC Bridge (它已经过时,已从Java8中删除),那么您可能需要使用类似于我的相关答案here中的第二个示例的ADOX代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31768452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档