MySQL - Supprimer la totalité des tables d'une base de données sans erreur

Cea20180121114850772 supprimer tables bdd jan2018

Pour supprimer l'ensemble des tables d'une base de données sans qu'il y ait d'erreurs (notamment les erreurs provoquées par les contraintes de clés étrangères), il suffit simplement de lancer la requête suivante :

SET FOREIGN_KEY_CHECKS = 0;
SET GROUP_CONCAT_MAX_LEN=32768;
SET @tables = NULL;
SELECT GROUP_CONCAT('`', table_name, '`') INTO @tables
  FROM information_schema.tables
  WHERE table_schema = (SELECT DATABASE());
SELECT IFNULL(@tables,'dummy') INTO @tables;

SET @tables = CONCAT('DROP TABLE IF EXISTS ', @tables);
PREPARE stmt FROM @tables;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET FOREIGN_KEY_CHECKS = 1;

 


21 January 2018 - Tags : MySQL

Commentaires

Ajouter un commentaire

0 Commentaires

Rechercher

Tags

Suivez-nous