Как удалить таблицы по префиксу

16.09.2014
Задача: в базе данных MySql есть набор таблиц с префиксом, нужно удалить только их.

Вариант решения:

  1. Генерируем запрос:

    1
    2
    3
    SELECT GROUP_CONCAT('DROP TABLE ', table_name, ';' SEPARATOR '') AS statement 
    FROM information_schema.tables 
    WHERE TABLE_SCHEMA = 'db_test' AND table_name LIKE 'prefix_%';

    где, db_test – имя базы, из которой нужно удалять.
    prefix_ - префикс таблиц.

    * желательно выполнять такой запрос через утилиту mySql (по ssh) т.к. phpMyAdmin обрезает вывод получившегося запроса.

  2. Выполняем полученный запрос.

Категории: SQL
Яндекс.Метрика