[dbAdmin] Управление таблицами БД
Предлагаю вашему вниманию первую версию модуля для управления таблицами базы данных. Пока функционал достаточно скромный, но разработчикам немного упростит жизнь.
Основные возможности:
- просмотр таблиц;
- переименование, очищение и удаление таблиц;
- экспорт таблиц в текстовый файл;
- поиск таблицы по имени или классу;
- выполнение sql запросов.
Для таблиц можно указать класс объекта MODX. А это дает возможность использовать использовать классы в SQL запросах (покажу ниже).
Кстати, системные таблицы с нужными параметрами добавляются при установке компонента. Для пользовательских таблиц нужно самостоятельно указать класс и пакет. Последний нужен для xPDO.
Работать с компонентом достаточно просто и интуитивно. Если нужно выгрузить всю базу данных, нажимаем кнопку «Экспорт базы данных». Если нужно выполнить операции экспорта, очистки или удаления нескольких таблиц, работаем с меню «Массовые действия». Для работы с одной таблицей можно пользоваться кнопками из колонки «Действия».
Кстати, в этой колонке есть еще кнопка «Просмотр таблицы», которая вызывает окно с данными этой таблички. Пока только для просмотра, но в дальнейшем и с возможностью редактирования данных.
Еще одна фича компонента — выполнение sql запросов. Для этого есть отдельная вкладка SQL. Там можно писать стандартные запросы MySql. А так как у нас есть карта таблиц и классов, то возможен вот такой синтаксис:
select pagetitle, uri from {modResource}
Результат запроса показывается в нижней части пока через print_r. В дальнейшем планирую вывод в окне.
Разрешения
Для работы с компонентом пользователь должен иметь соответствующие права.
- tables_list — Разрешает вывод списка таблиц.
- table_view — Разрешает просмотр таблицы.
- table_save — Разрешает сохранять данные.
- table_truncate — Разрешает удалять записи из таблицы (truncate table).
- table_remove — Разрешает удалять таблицу (drop table).
- table_export — Разрешает экспорт таблицы.
- sql_query_execute — Разрешает выполнение sql запросов.
Администратору с sudo дозволено всё.
Пока все. В планах, кроме озвученного, также возможность создания таблиц. Мне кажется компонент нужный и пригодится многим.
Дополнительная информация
Вы должны авторизоваться, чтобы оставлять комментарии.
Комментарии ()