2

我有一个简单的 h2 数据库示例,我假设它是一个存储在单个文件中的数据库。但是我在哪里可以找到这个文件?我想使用 Squirrel 等 SQL 客户端连接到该数据库。这个文件默认放在哪里?

    <property name="eclipselink.jdbc.platform"
        value="org.eclipse.persistence.platform.database.H2Platform" />
    <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" />
    <property name="javax.persistence.jdbc.url" value="jdbc:h2:~/myDB;FILE_LOCK=NO" />
    <property name="javax.persistence.jdbc.user" value="sa" />
    <property name="javax.persistence.jdbc.password" value="sa" />
4

3 回答 3

4

基于以下值:

jdbc:h2:~/myDB;FILE_LOCK=NO"

您的数据库文件似乎位于您的主目录中的一个名为myDB

表示您的~主目录。

于 2013-10-07T17:41:22.203 回答
3

您可以使用以下代码在服务器模式下运行 H2 并使用 SQuirrl SQL 客户端进行连接。

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="org.h2.Driver" />
<property name="url" value="jdbc:h2:target/h2/ps;AUTO_SERVER=TRUE" />
<property name="username" value="sa" />
<property name="password" value="" />
</bean>

您可以使用 SQuirrel SQL 客户端 ( http://squirrel-sql.sourceforge.net/ ) 连接到您的 H2 数据库并查看表格。

创建新连接。在驱动程序下拉菜单中选择 H2 将 url 设置为您的项目目标文件夹 h2 文件夹 (jdbc:h2:C:\projects\workspace\TestProject\target/h2/ps;AUTO_SERVER=true) 输入用户名 ("sa") 输入密码("")

于 2013-10-09T16:31:52.343 回答
0

在您的示例中,该文件位于您的主目录(表示为~)下的文件 myDB 中:

  <property name="javax.persistence.jdbc.url" value="jdbc:h2:**~/myDB**;FILE_LOCK=NO" />
于 2013-10-07T17:40:19.780 回答