如何在嵌入模式下自动创建hsqldb

时间:2013-08-27 20:38:47

标签: java sql hibernate hsqldb

我目前正在使用hibernate + hsqldb开发一个java桌面应用程序 在嵌入模式下创建了一个hsqldb数据库,我的hibernate配置文件如下

<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
<property name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
<property name="hibernate.connection.url">jdbc:hsqldb:file:C:\Users\Desktop\project1\okbadb</property>
<property name="hibernate.connection.username">sa</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.query.factory_class">org.hibernate.hql.ast.ASTQueryTranslatorFactory</property>
<event type="create">
</event>

  <properties>
      <property name="hibernate.hbm2ddl.auto" value="update"/>
  </properties>
  </session-factory>

connection url是本地的并且依赖于我的机器
我的问题是每次安装我的应用程序时(在不同的机器上)如何创建新数据库 以及如何为此目的使用sql脚本?

1 个答案:

答案 0 :(得分:1)

每次程序在不同的机器上运行时,数据库都是在您使用的绝对路径中创建的。

您可以使用相对路径开头的~在用户主目录的子目录中创建数据库。例如jdbc:hsqldb:file:~\project1\okbadb

如果数据库尚不存在,HSQLDB会创建一个数据库。因此,没有单独的命令来创建数据库。