PostgreSQL: графический клиент pgAdmin::Журнал СА 9.2004
www.samag.ru
Журнал «БИТ. Бизнес&Информационные технологии»      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
1001 и 1 книга  
19.03.2018г.
Просмотров: 6567
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 7222
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4487
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 3116
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3914
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3931
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6423
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3266
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3561
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7403
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10760
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12478
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 14159
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9226
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7171
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5473
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4705
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3529
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3234
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3471
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3120
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 PostgreSQL: графический клиент pgAdmin

Архив номеров / 2004 / Выпуск №9 (22) / PostgreSQL: графический клиент pgAdmin

Рубрика: Базы данных /  Оптимизация

СЕРГЕЙ СУПРУНОВ

PostgreSQL: графический клиент pgAdmin

В предыдущей статье, посвященной СУБД PostgreSQL (см. июльский номер журнала), упоминался графический клиент pgAdmin. В этой статье рассмотрим его основные функции и возможности.

Для тестирования с сайта www.pgadmin.org был скачан пакет pgAdmin III версии 1.0.2 для Windows 2000/XP (в виде msi-архива). Размер дистрибутива составляет менее 5,5 Мб. Установка пакета на операционную систему Windows XP Professional затруднений не вызвала. После традиционного вопроса о согласии с условиями лицензионного соглашения (пакет распространяется бесплатно) и нескольких секунд инсталляционных процедур программа была готова к работе.

При первом запуске было предложено выбрать предпочитаемый язык интерфейса. Среди нескольких десятков поддерживаемых языков отыскался и русский.

Открывшееся далее главное окно (рис. 1) своими очертаниями вызвало в памяти образ входящего в состав СУБД Oracle клиента PL/SQL Developer. Правда, некоторый аскетизм панели инструментов навевал мысль, что в функциональном плане различия будут более заметны, и никак не в пользу pgAdmin.

Рисунок 1

Рисунок 1

СУБД PostgreSQL версии 7.4.1 у меня была запущена на другой машине (под управлением FreeBSD), что и было указано при добавлении сервера (рис. 2). Поясню отсутствие пароля: моя рабочая машина прописана в файле pg_hba.conf (файл настройки доступа PostgreSQL) как доверенный хост, что позволяет соединяться с сервером БД, как мне заблагорассудится. Своя рука – владыка. Естественно, на рабочем сервере такая халатность не приветствуется.

Рисунок 2

Рисунок 2

Теперь слева будет дерево баз данных, справа отображается информация по выделенному объекту и ниже – SQL-команда, с помощью которой выделенный объект мог быть создан (рис. 3).

Рисунок 3

Рисунок 3

Для общего представления создадим новую таблицу. Для чего давим правую кнопку мыши над веткой «Таблицы», выбираем «Новый объект» – «Новая таблица» и начинаем вводить ее свойства (рис. 4).

Рисунок 4

Рисунок 4

Далее, на вкладке «Колонки» собираем (другое определение к этому процессу подобрать трудно) структуру таблицы, последовательно добавляя поля (рис. 5). Для каждого поля должно быть задано имя и тип данных. Дополнительно можно указать значение по умолчанию и/или отметить поле как «NOT NULL», запретив тем самым оставлять его без определенного значения.

Рисунок 5

Рисунок 5

На следующей вкладке можно задать ограничения (первичный и вторичный ключи, UNIQUE и CHECK).

Вкладка «Безопасность» позволяет раздать другим пользователям права доступа к создаваемой таблице.

Последняя закладка – «SQL» – позволяет посмотреть, каким SQL-запросом все это будет создано.

Огорчила невозможность исправить ошибку на стадии создания таблицы. Например, если вы неправильно задали тип данных для поля, то исправить это можно, только удалив поле и создав новое. В дальнейшем, если вернуться к свойствам уже созданной таблицы, кнопка «Изменить» присутствует, а вот во время создания новой – нет… А для ограничений нет даже этого – только удалять и создавать заново.

Еще один недостаток – об ошибке узнаешь только при попытке сохранить сделанные изменения.

Как уже было вскользь замечено, существующие таблицы можно изменять. Да и было бы странно, если бы такая возможность отсутствовала. Интерфейс тот же самый (за исключением упомянутой выше кнопки «Изменить»). На вкладке «SQL» будет формироваться код, который необходимо выполнить для осуществления желаемых изменений.

Код формируется, как и следовало ожидать, довольно просто, без «хитринки». Например, если дать указание при создании таблицы задать владельца, то в код будет просто добавлена команда «ALTER TABLE … OWNER …» после того, как таблица будет создана командой «CREATE TABLE …». Хотя по-хорошему это можно сделать одной командой.

Для работы с наполнением таблиц служит инструмент «Просмотр данных» (рис. 6). Выполненный в стиле «старого доброго» MS Access, он позволяет просматривать содержимое таблицы, добавлять новые строки, изменять и удалять существующие. Причем изменение данных возможно только в случае, если таблица создана с установленным флагом «Имеет OID». Как ни странно это выглядит, но в обоих случаях инструмент называется именно «Просмотр данных» (в англоязычном варианте «View Data»), несмотря на возможность редактирования, хотя заголовок окна гласит «pgAdmin III Edit data», и тоже в обоих случаях. Таким образом, этот недочет, допущенный при проектировании интерфейса, способен ввести в заблуждение, и сразу отыскать возможность работы с данными таблиц довольно трудно.

Рисунок 6

Рисунок 6

Более широкие возможности по работе с запросами предоставляет «Инструмент запросов» (рис. 7). Тут уже есть куда ввести любой SQL-запрос и посмотреть его результат. Закладка «Сообщения» внизу окна позволяет ознакомиться с такой информацией, как количество выбранных запросом записей и время выполнения запроса. Весьма полезная функция – «Объяснить запрос» (рис. 8), выводящая последовательность действий, которые будет выполнять PostgreSQL, обрабатывая данный запрос, с расчетом времени, затрачиваемого на каждую операцию – незаменимый инструмент для оптимизации запросов. В пункте меню «Запрос» – «Опции режима объяснения» можно включить и подробный разбор каждого запроса.

Рисунок 7

Рисунок 7

Рисунок 8

Рисунок 8

Функция обслуживания БД позволяет выполнить дефрагментацию и анализ структуры базы данных либо отдельных таблиц. Регулярная дефрагментация нужна для повышения скорости доступа к данным, а анализ поставляет служебную информацию оптимизатору СУБД, на основании которой последний способен обрабатывать запросы более эффективно.

Ну и наконец, в окне «Опции» вы можете произвести некоторые настройки интерфейса, такие как выбор языка и шрифта, по своему вкусу, а также настроить log-файл.

Включение опции «Показать» – «Системные объекты» приведет к отображению баз template0 и template1, а также в каждой пользовательской БД, помимо схемы public, хранящей пользовательские данные, будут видны и служебные схемы: information schema, pg_catalog, pg_temp_1, pg_toast (рис. 9). Естественно, что для работы с системными объектами нужно обладать соответствующими правами.

Рисунок 9

Рисунок 9

Трудно сказать, недостаток это или особенность реализации, но pgAdmin жестко привязывает имя пользователя к конкретному серверу. То есть при необходимости подсоединиться к БД с другими правами приходится создавать несколько «серверов», указывающих на одну СУБД, но с разными пользователями (рис. 10). Хотя в этом есть и определенные преимущества, т.к. можно поддерживать одновременно несколько подключений с различными правами. К слову, посмотреть все подключения к СУБД можно, выбрав «Сервис» – «Состояние сервера».

Рисунок 10

Рисунок 10

В заключение заметим, что в клиенте доступен файл помощи. Правда, он на английском языке, но тем не менее достаточно подробно, просто и с обилием иллюстраций описывает работу с клиентом, его настройку, а также содержит подробную справку по PostgreSQL 7.4. Показалось несколько неудобным, что развернутое окно помощи всегда находится поверх рабочего окна, закрывая часть данных. Хотя всегда можно открыть справку отдельно (соответствующий пункт присутствует в группе «pgAdmin III» меню «Пуск»), и тогда ничто не будет мешать переключаться между окнами любимой комбинацией .

Итак, мои общие впечатления – клиент добротный, не считая мелких недостатков; поддерживает практически все функции разработки и администрирования. Широкие возможности по анализу запросов, наглядное представление структуры БД и ее составляющих, интуитивно понятный, не обремененный ничем лишним, да еще и русскоязычный интерфейс делают pgAdmin удобным инструментом для работы с базами PostgreSQL, особенно для начинающих. Помимо версии для Windows, есть пакеты для Linux (Debian, RPM, Slackware packages), для FreeBSD. При желании пакет может быть собран и из исходных текстов.

Дополнительную информацию (в том числе и на русском языке) можно получить на сайте проекта.


Комментарии
 
  16.08.2013 - 11:10 |  victo_r

Последнее время я использую Valentina Studio для работы с PostgreSQL. Очень хороший и бесплатный инструмент, рекомендую посмотреть.http://www.valentina-db.com/en/valentina-studio-overview

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru