Non far cadere una tabella in MySQL anche eliminare gli indici?
Domanda
Non è esplicitamente menzionato nella documentazione ( http: // dev.mysql.com/doc/refman/6.0/en/drop-table.html ). Lo chiedo perché ho appena visto una migrazione di database curiosa in un progetto in cui lo sviluppatore Rails stava rimuovendo tutti gli indici prima di cadere al tavolo, e che sembrava inutile.
Soluzione
Sì, lo fa.
Tuttavia, se si dispone di vincoli di chiave esterna come ad esempio limitare tale assicurano l'integrità referenziale con altre tabelle, ti consigliamo di eliminare le chiavi prima di cadere o troncare una tabella.
Altri suggerimenti
Si sarebbe eliminare l'indice. Non c'è motivo di mantenere l'indice se la tabella sottostante non c'è. Ho il sospetto che la migrazione verso il basso è solo facendo l'opposto della migrazione verso l'alto su una base uno-a-uno.
E 'inutile. Il tuo DROP TABLE potrebbe però essere evitato quando la tabella è parte di relazioni di chiave esterna e far cadere il vostro tavolo avrebbe rotto le dipendenze.