Achei útil o conjunto gerado de instruções drop e recomendo estes ajustes:
- Limite as gotas geradas ao seu banco de dados assim:
SELECT concat('DROP TABLE IF EXISTS `', table_name, '`;')
FROM information_schema.tables
WHERE table_schema = 'MyDatabaseName';
Observação 1:isso não executa as instruções DROP, apenas fornece uma lista delas. Você precisará recortar e colar a saída em seu mecanismo SQL para executá-los.
Observação 2:se você tiver VIEWs, precisará corrigir cada
DROP TABLE `VIEW_NAME`
instrução para DROP VIEW `VIEW_NAME`
manualmente. - Observação, por http://dev.mysql .com/doc/refman/5.5/en/drop-table.html , descartar com cascata é inútil / enganoso:
Portanto, para que as instruções drop funcionem, se você precisar:
SET FOREIGN_KEY_CHECKS = 0
Isso desabilitará as verificações de integridade referencial - então, quando você terminar de executar as eliminações necessárias, você desejará redefinir a verificação de chave com
SET FOREIGN_KEY_CHECKS = 1
- A execução final deve ser semelhante a:
SET FOREIGN_KEY_CHECKS = 0;
-- Your semicolon separated list of DROP statements here
SET FOREIGN_KEY_CHECKS = 1;
NB:para usar a saída do SELECT mais fácil, a opção mysql -B pode ajudar.