Laisser tomber une table dans MySQL supprime-t-elle également les index?

Ce n’est pas explicitement mentionné dans la documentation ( http://dev.mysql.com/doc/refman/6.0/en/drop-table.html ). Je demande parce que je viens de voir une curieuse migration de firebase database dans un projet Rails où le développeur supprimait tous les index avant de déposer la table, et cela semblait inutile.

Oui.

Toutefois, si vous avez des contraintes de clé étrangère telles que RESTRICT qui garantissent l’intégrité référentielle avec d’autres tables, vous devez supprimer ces clés avant de supprimer ou de tronquer une table.

Oui, il laisserait tomber l’index. Il n’y a aucune raison de conserver l’index si la table sous-jacente n’est pas là. Je soupçonne que la migration à la baisse ne fait que l’inverse de la migration à la hausse sur une base individuelle.

C’est inutile. Votre DROP TABLE peut cependant être évitée lorsque la table fait partie de relations de clés étrangères et que la suppression de votre table briserait les dépendances.