sql >> Base de Datos >  >> RDS >> Mysql

Grails 2.4.4 DataSource create-drop no puede eliminar todas las tablas que tienen FK

Para mi caso, configurar FK-checks a 0 para MySQL (v5.5.25) resolvió esto, aunque no estoy completamente seguro de si se supone que debo SET FOREIGN_KEY_CHECKS=0 en absoluto.

Si alguien tiene una mejor solución, por favor comparta.

EDITAR

El problema se enfrentó debido a este . Lección aprendida - No copiarás y pegarás código aleatorio sin pensar ~:-/

RESPUESTA

Gracias Burt.

Si la base de datos se comporta de forma errática con las operaciones ddl. Compruebe siempre ddl.sql generado por grails schema-report , que idealmente debería tener la siguiente estructura

alter table <Table> drop constraint <Constraint>
...

drop table if exists <Table>
...

create table <Table>(...)
...

create index <Index> ...   --(if any)
...

alter table <Table> add constraint <Constraint>
....