一尘不染

如何在Hibernate的import.sql中将表达式分成更多行?

hibernate

在Hibernate中,可以import.sql在类路径的根目录中添加文件,并且在创建Hibernate会话时,将在数据库上执行该文件的SQL表达式。

但是,如果某些表达式分成两行或更多行,则Hibernate会引发异常。如何将SQL表达式分成更多行?


阅读 170

收藏
2020-06-20

共1个答案

一尘不染

为了像我这样的人通过搜索找到此内容:

如果您使用的是Hibernate4,则可以添加以下属性

<property name="hibernate.hbm2ddl.import_files_sql_extractor" value="org.hibernate.tool.hbm2ddl.MultipleLinesSqlCommandExtractor" />

到您的hibernate配置(我的是JPA的persistence.xml)。与用户手册JIRA问题进行比较

请注意 ,在Hibernate的 hibernate.cfg.xml中 ,规范无法识别该value属性,您应该将其提供为文本内容:

<property name="hibernate.hbm2ddl.import_files_sql_extractor">org.hibernate.tool.hbm2ddl.MultipleLinesSqlCommandExtractor</property>

(感谢Daniel Gerber指出这一点)

2020-06-20