0

我一直在玩 Spring Webflow 示例项目之一,booking-faces (Spring webflow + JSF + primefaces)

部署应用程序后,我就可以从数据库中搜索酒店,这对我来说非常棒。我想我需要先执行 import.sql 中的 sql 来填充数据库。

然后我搜索了整个项目,没有发现其他配置文件引用的这个import.sql在哪里。

所以我很自然地认为 hsqldb 会查找类路径上的所有 .sql 文件并执行它们以填充内存数据库。

但是,当我将 sql 文件名从import.sql更改为import123.sql时,数据不会插入到数据库中。即使更改为Import.sql也不再有效。

所以我的问题是

  1. 这个sql文件的名字重要吗?必须是import.sql吗?还有其他选择吗?
  2. 如何让 hsqldb 执行任意 sql 文件?
4

1 回答 1

1

是的,正如您所发现的,这个名字很重要。Hibernate 在类路径中找到 import.sql 文件,并在创建数据库模式后运行它。据我所知,文件名是不可配置的,必须是import.sql

编辑 - 我在http://docs.jboss.org/hibernate/orm/3.6/reference/en-US/html/session-configuration.html找到了文档

显然,您可以将 hibernate.hbm2ddl.import_files 设置为以逗号分隔的要执行的 sql 文件列表。

于 2012-10-19T03:14:53.670 回答