Eliminare tutte le tabelle di un Db MySQL senza eliminare il db stesso

Può capitare che hosting di servizi come Aruba, non vi facciano eliminare il db che vi hanno messo a disposizione.

E’ perciò necessario riuscire ad eliminare in un solo colpo tutte le tabelle presenti senza perdere troppo tempo

Interveniamo perciò con questa query:

SELECT concat('DROP TABLE IF EXISTS ', table_name, ';')
FROM information_schema.tables
WHERE table_schema = 'MyDatabaseName';

Che mi restituisce un elenco di tutte le tabelle presenti aggiungendo già la parte DROP TABLE…

Copio il risultato della queti nuovamente nello spazio SQL

Aggiungo prima e dopo l’opzione di ignorare i FOREIGN_KEY

SET FOREIGN_KEY_CHECKS=0; 
DROP TABLE table1...;
DROP TABLE table1...;
SET FOREIGN_KEY_CHECKS=1;