Удалить все таблицы в базе данных Mysql | Drop all tables in mysql
Всем привет! Сегодня я вам кратко расскажу, как удалить все таблицы разом в MySQL, не удаляя базу данных.
Есть два способа это сделать.
Есть два способа это сделать.
Самый простой способ удалить таблицы MySQL, заключается в использовании mysqldump:
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] | grep ^DROP | mysql -u[USERNAME] -p[PASSWORD] [DATABASE]
Переменные, которые указаны выше, [USERNAME], [PASSWORD] и [DATABASE] это опции вашей базы данных. Вы можете менять USERNAME, PASSWORD и DATABASE, как вам угодно.
Второй способ, используя некоторые конструкции MySQL для формирования списка таблиц и последующего их удаления
SET FOREIGN_KEY_CHECKS = 0;
SET @tables = NULL;
SELECT GROUP_CONCAT(table_schema, '.', table_name) INTO @tables
FROM information_schema.tables
WHERE table_schema = 'database_name'; -- specify DB name here.
SET @tables = CONCAT('DROP TABLE
IF EXISTS ', @tables);
PREPARE stmt FROM @tables;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET FOREIGN_KEY_CHECKS = 1;
Вышеуказанный код скопирован и немного изменен, с учетом некоторых правок, с сайта stackoverflow.com
Материалы страницы:
Комментарии
Отправить комментарий