我使用createdrop作为hibernate.hbm2ddl.auto的值。我还创建了一个脚本,因为在实际执行任何类型的测试之前,我需要在by表中插入一些数据。但是,由于我的模式是自动创建的,因为我使用了createdrop模式,但是脚本得到了一个错误,并且说没有这样的表用于我尝试执行的sql操作。我认为这是因为脚本是在创建表之前运行的。我该怎么做?一种方法是使用validate和provider创建一个create.sql文件来创建模式,然后运行脚本。但我想用create drop。
<properties>
<!-- Configuring JDBC properties -->
<property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;INIT=RUNSCRIPT FROM 'classpath:create.sql'\;RUNSCRIPT FROM 'classpath:data.sql'"/>
<property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/>
<!-- Hibernate properties -->
<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
<property name="hibernate.hbm2ddl.auto" value="create-drop"/>
<property name="hibernate.format_sql" value="false"/>
<property name="hibernate.show_sql" value="true"/>
</properties>
暂无答案!
目前还没有任何答案,快来回答吧!