【发布时间】:2013-09-20 15:30:54
【问题描述】:
在我的 jUnit 测试中,hibernate 创建了模式,并且我有一个 import.sql 来插入测试数据。 Hibernate 当然只会从 JPA 对象创建表。 我想在运行 JUnit 测试时创建一些额外的表。没有 JPA 对象的表。
我尝试将 create 语句放在 import.sql 中,但没有奏效。
【问题讨论】:
在我的 jUnit 测试中,hibernate 创建了模式,并且我有一个 import.sql 来插入测试数据。 Hibernate 当然只会从 JPA 对象创建表。 我想在运行 JUnit 测试时创建一些额外的表。没有 JPA 对象的表。
我尝试将 create 语句放在 import.sql 中,但没有奏效。
【问题讨论】:
您必须在 Hibernate 配置文件中将 import.sql 文件的路径指定为 hibernate.hbm2ddl.import_files 属性吗?如果您已指定此路径但仍无法正常工作,请确保它指的是您的 import.sql 文件的正确路径。我认为可能有一个错字或类似的东西
编辑:
正如this帖子中提到的:
仅当 hbm2ddl.auto = create-drop 时才会加载脚本。进口 文件在所有其他选项上都被忽略。注意只有单行 此文件中允许使用语句。
【讨论】:
在运行测试用例之前创建未映射到休眠对象的所需表会很好。
你是如何执行 import.sql 的?如果您在数据库级别具有所需的访问权限,则可以像 hibernate 一样从 java 创建表
【讨论】: