1

因此,我在另一个线程上得到了评论,以将 h2 用于我的 java 应用程序中的嵌入式数据库。基本上,我需要 .jar 文件在另一台计算机上运行,​​而无需在他们的计算机上安装 sql server 或 h2。它必须能够使用 jar 运行并自动访问数据库,因此 db 必须随 jar 一起提供。

我怎么做?我正在尝试使用 h2。

带有 h2 的应用程序将在关闭 eclipse IDE 的情况下在我的机器上运行,但是一旦我放入 jar 文件(带有所需库的子文件夹,例如 h2)并运行它,它什么也不做。

所以我从 cmd 运行了 jar 文件,它给我带来了找不到表的错误。那么我如何将数据库作为嵌入到应用程序中来交付呢?

我看到另一个项目有一个 microsoft access 数据库文件,其中包含他的应用程序文件。是否可以在 thge 应用程序的根目录中拥有一个数据库文件并使用它,然后以后可以在 microsoft access、phpmyadmin 或 workbench 中对其进行编辑?请就此提出建议,因为我不知道如何做到这一点。

请注意,我对 Java 比较陌生。

提前致谢

4

1 回答 1

0

如果找不到数据库,您将发送数据库配置以创建数据库,然后在启动时运行 CREATE TABLE 并插入 SQL 脚本以在启动时构建数据库。我在 Derby 上做了很多,所以我会用它作为参考点。

为此,您需要;create=true像下面这样附加到您的数据库 url。

<connection-url>jdbc:derby:C:/mydb;create=true;characterEncoding=utf-8</connection-url>

这将确保已创建数据库。您现在知道数据库已创建,您可以通过发送一个 .sql 文件或类似的文件来构建结构和内容,如果表不存在,该文件将在启动时针对它运行。这为您提供了附加功能,您可以在每次发布应用程序时非常轻松地部署应用程序,因为它将能够在第一次部署时检查表是否存在并在需要时创建它们。

于 2013-09-20T08:29:08.497 回答