2014-02-26 40 views
0

我们使用Hibernate(jboss 7.1.1版本)和MySQL5Dialect。我们的数据库是“mysql Ver 14.14 Distrib 5.5.32”。HIbernate-MySQL5Dialect想要删除外键而不是索引

属性“hibernate.hbm2ddl.auto”设置为“create”。

尽管如此,Hibernate无法在启动阶段删除表。在日志中可以发现的第一个问题如下:

08:40:53,520 INFO [stdout] (MSC service thread 1-3) Hibernate: alter table Item drop foreign key FK22EF33845529AC 
08:40:53,527 ERROR [org.hibernate.tool.hbm2ddl.SchemaExport] (MSC service thread 1-3) HHH000389: Unsuccessful: alter table Item drop foreign key FK22EF33845529AC 

Hibernate希望删除找不到的外键。该数据库没有具有给定名称的外键,而是具有给定名称的索引。删除索引的工作没有任何缺陷:

alter table Item drop index FK22EF33845529AC; 

我们应该使用另一个SQLDialect吗?

回答

0

我们已经将“hibernate.hbm2ddl.auto”设置为“创建 - 删除”,到目前为止它解决了我们的问题。