MySQL. Как получить список представлений?
Представление (view) – это особая логическая или виртуальная таблица представляющая собой запрос. Этот запрос будет использован как подзапрос, если сделать выборку из представления.
Представления работают как таблицы и никак не отличаются от них. Как же получить список представлений, список только таблиц и определить таблица это или представление?
Используем запросы для решения нашей задачи. Для получения списка полного списка таблиц и представлений с указанием типа:
SELECT TABLE_NAME FROM information_schema.`TABLES` WHERE TABLE_TYPE LIKE 'VIEW' AND TABLE_SCHEMA LIKE '_your_db_name_';
для списка таблиц:
SELECT TABLE_NAME FROM information_schema.`TABLES` WHERE TABLE_TYPE LIKE 'BASE TABLE' AND TABLE_SCHEMA LIKE '_your_db_name_';
для определения типа:
SELECT TABLE_TYPE FROM information_schema.`TABLES` WHERE TABLE_NAME LIKE '_your_table_name_' AND TABLE_SCHEMA LIKE '_your_db_name_';
При использовании mysql
– интерфейса командной строки к MySQL – можно воспользоваться более простыми запросами. Для списка представлений:
SHOW FULL TABLES WHERE TABLE_TYPE LIKE 'VIEW';
для списка таблиц:
SHOW FULL TABLES WHERE TABLE_TYPE LIKE 'BASE TABLE';
Для PostgreSQL эти же запросы будут слегка отличаться. Об этом можно почитать в этой статье