2015-01-31 3 views
2

Когда я развертываю свой Wildfly, я ожидаю, что все мои таблицы базы данных будут удалены и снова созданы. Но некоторые старые таблицы (старые Java-сущности) все еще присутствуют в моей базе данных.JPA persistence.xml не отбрасывает все таблицы схем

Это мой persistence.xml файл:

<?xml version="1.0" encoding="UTF-8"?> 
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd" 
    version="2.1"> 

    <persistence-unit name="gestalPU"> 
     <provider>org.hibernate.ejb.HibernatePersistence</provider> 
     <jta-data-source>java:jboss/datasources/MySQLDS</jta-data-source> 

     <properties> 

      <property name="javax.persistence.schema-generation.database.action" 
       value="drop-and-create" /> 
      <property name="javax.persistence.schema-generation.create-source" 
       value="metadata" /> 
      <property name="javax.persistence.schema-generation.drop-source" 
       value="metadata" /> 
      <property name="javax.persistence.sql-load-script-source" 
       value="insert.sql" /> 
      <property name="javax.persistence.schema-generation.create-database-schemas" value="true"/> 
     </properties> 
    </persistence-unit>  
</persistence>   
+0

и являются ли «старыми таблицами» для некоторых существующих сущностей JPA? –

ответ

1

drop-and-create только капли таблицы, связанные с текущими лицами, не продуть всю схему.

Так, например, если вы переименовали объект, таблица, соответствующая имени старого объекта, останется в базе данных.

+0

И как я могу автоматизировать удаление всех таблиц перед созданием новых? – ElArbi

Смежные вопросы