Графический интерфейс pgAdmin III. Pgadmin3 руководство на русском


Графический интерфейс pgAdmin III

Инструментальные средства представляют собой программы, предназначенные для обслуживания БД, а также для выполнения вспомогательных действий при разработке приложений, например, для создания таблиц и отладки SQL-запросов. Совместно с PostgreSQL поставляется pgAdmin III, который применяется для работы как с локальными, так и с удаленными БД. Также существует интерактивная терминальная программа PostgreSQL, называемая psql, которая позволяет интерактивно вводить, редактировать и выполнять команды SQL. Запустить ее можно из Пуск/Все программы/PostgreSQL 8.3/SQL Shell (psql).

Есть и другие аналогичные программы, например, pgAgent, phpPgAdmin и др., но в рамках данного учебного пособия рассмотрим только графический интерфейс pgAdmin.

Главное окно pgAdmin

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

Рис. 43. Главное окно pgAdmin III

Строка меню содержит пункты «Файл», «Правка», «Представление», «Сервис» «?». Основные операции, реализуемые с помощью строки меню, могут быть выполнены с помощью кнопок панели инструментов, рассмотренных ниже.

Назначение кнопок панели инструментов приведено ниже.

- Добавить подсоединение к серверу;

- Обновить выделенный объект;

- Показать/редактировать свойства, выделенного объекта;

- Создать новый объект того же типа, что и выделенный объект;

- Удалить выделенный объект;

- Выполнить пользовательские SQL-запросы;

- Просмотреть данные выбранного объекта;

- Применить фильтр и просмотреть данные выбранного объекта.

На левой панели, называемой браузером объектов, отображается дерево со всеми зарегистрированными серверами и их БД, а также элементы структуры, например, таблицы, представления, пользователи и т.д. В качестве имени сервера отображается его псевдоним, задаваемый при регистрации сервера.

В верхней части правой панели выводится информация об объекте, выбранном в левой панели.

В нижней правой части содержится скрипт создания выбранного объекта слева. Вы можете сохранить его, использовать в качестве шаблона.

Некоторые объекты могут иметь статистические данные в дополнение к своим свойствам, они могут быть показаны, если вы выберите вкладку Статистика.

Можно изменить размер главного окна, а также изменение размеров трех основных регионов, как вы предпочитаете. Эти изменения будут сохранены при выходе из программы.

Состояние объектов в окне браузера обновляется только по запросу или после изменения, сделанных с помощью встроенных средств. Обновления объектов не происходит при выполнении пользовательского SQL-скрипта или если другие пользователи БД сделали какие-то изменения на данном сервере. Поэтому рекомендуется обновлять объекты перед их изменением.

Компоненты ветки базы данных

На Рис. 14 представлен проводник с полностью раскрытыми узлами базы данных postgres, схемы uchebnaja. После имени узла в скобках указано количество объектов, содержа­щихся в этом узле. Ниже приведен краткий обзор представленного дерева. Работа с каж­дым конкретным объектом будет более подробно описана ниже.

Преобразования типов (Casts)

В PostgreSQL имеется возможность задавать для преобразования данных из одного типа в другой особую функцию для каждой базы данных. Например, результатом дейст­вия оператора SELECTCAST(42AStext), при должном задании функции, будет строка «сорок два».

Языки (Languages)

PostgreSQL позволяет использовать для написания функций несколько языков. При­чем язык SQL может быть использован всегда, а другие языки следует подключать специ­альным образом. При установке мы разрешили процедурный язык PL/pgSQL (в браузере он называется plpgsql).

Схемы (Schemas)

Схема это всего лишь пространство имен. Имена объектов в базе данных (например, таблиц) должны быть уникальны в пределах схемы. В различных схемах они могут повто­ряться. Поскольку аналога схемам в MS SQL Server 2000 нет, то в дальнейшем в приме­рах ограничимся одной схемой, в проводнике база данных Disp имеет одну схему – main. Далее кратко рассмотрим, какие объекты входят в схемы. В дереве схемы main (см. Рис. 44) почти у всех узлов казано число 0 – ноль объектов. Если Вы перейдете в режим отобра­жения системных объектов и рассмотрите схему pg_catalog, то Вы увидите там массу объектов.

Рис. 44. Отображение объектов базы данных в проводнике

 

Агрегаты (Aggregates)

Агрегатные функции вычисляют одно значение исходя из множества входных значе­ний. Имеется большое количество встроенных системных агрегатных функций, например AVG – среднее значение, подобная одноименной функции MS SQL Sever. В PostgreSQL пользователь может сам создавать подобные агрегатные функции.

stydopedia.ru

PostgreSQL: графический клиент pgAdmin::Журнал СА 9.2004

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

Facebook

Twitter

Мой мир

Вконтакте

Одноклассники

Google+

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

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

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

Рисунок 2

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

Рисунок 3

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

Рисунок 4

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

Рисунок 5

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

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

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

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

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

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

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

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

Рисунок 6

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

Рисунок 7

Рисунок 8

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

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

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

Рисунок 9

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

Рисунок 10

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

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

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

Facebook

Twitter

Мой мир

Вконтакте

Одноклассники

Google+

samag.ru

Работа с postgresql при помощи pgadmin

Альтернативой работе с базой данных через консоль является более интуитивно понятная среда любого клиента с графическим интерфейсом. Например, pgAdmin. Установить его очень просто, выполняем с правами суперпользователя: sudo apt-get install pgadmin3 Теперь можно запустить pgAdmin через графический интерфейс. Выбираем в списке локальный сервер БД (у него дефолтный порт 5432) и добавляем уже созданную нами БД с теми параметрами, которые мы задали.
pgAdmin
В это локальном сервере помимо узла Databases можно найти также узел под названием Login Roles - все доступные роли.

Выберем из всех доступных баз данных ту, которую мы создали при установке postgresql. В базе данных содержится множество различных типов объектов. Среди особое внимание следует уделить таблицам и последовательностям (sequences).

Чаще всего обычная таблица содержит в себе первичный ключ в виде положительного числового значения. Для каждой строки это значение должно быть уникальным, поэтому чтобы каждый раз не задавать его напрямую в запросе, можно установить в качестве дефолтного значения последовательность.

Создание последовательности в pgAdmin
Для начала создадим последовательность. Выбираем Sequences - New Sequence. На первой вкладке вводим имя и указываем в качестве Owner ту роль, которую мы создали. Для других ролей эта последовательность будет недоступна. На второй вкладке в поля Increment и Start вводим по единице (если вам не требуется другое). На последней вкладке диалогового окна можно посмотреть результирующий SQL запрос, который будет выполнен к БД.

После того, как последовательность создана, приступим к созданию таблицы. Также указываем её имя и владельца (owner). На четвёртой вкладке Columns добавляем прежде всего первичный ключ. Кнопка Add, в появившемся окне указываем название столбца, например, id. В качестве типа данных выбираем bigint. На второй вкладке Definition в поле Default Value указываем нашу последовательность. В поле должно быть значение вида nextval('message_id_seq'::regclass). То есть каждый раз при добавлении новой строки из последовательности будет браться следующее значение. Добавили другие столбцы по необходимости. Наконец, на вкладке Constraints добавим ограничение на первичный ключ (Primary Key). На последней вкладке можем полюбоваться на результирующий SQL код, который сгенерировал pgAdmin. После нажатия ОК таблица будет создана.

Вместо bigint в качестве первичного ключа можно указать в качестве типа столбца bigserial. Этот тип инкрементируется автоматически при добавлении каждой новой строки, поэтому создавать последовательность для него не нужно. То есть в самом простом случае, если у вас нет каких-либо особых правил для формирования id записи, можно порекомендовать использовать bigserial.

Давайте посмотрим содержимое нашей таблицы. Для этого правой кнопкой мыши нажмём на неё и выберем в контекстном меню View Data - View 100 rows.

Просмотр содержимого таблицы в pgAdmin
В этом же окне можно быстро отредактировать значение любой ячейки таблицы. Если в вашей таблице больше 100 записей, измените количество отображаемых записей в выпадающем списке в верху окна. Вы можете отобразить 100, 500, 1000 или все записи. Но это не более чем способ быстро посмотреть содержимое таблицы и привыкать к нему не стоит. Если у вас в таблице десятки тысяч записей, отображать все записи сразу я бы не рекомендовал - в таком случае лучше писать запрос с использованием параметров limit и offset.

developer-remarks.blogspot.com

Установка Postgresql 9, pgAdmin III в Ubuntu 10.04

Я не любитель испытывать новые версии дистрибутивов и предпочитаю работать на релизах с долговременной поддержкой. Последним таким релизом для Ubuntu является дистрибутив версии 10.04.

Все бы хорошо, но посмотрев сколько вкусностей вошло в новую версию Postresql 9, очень захотелось его поставить, а в репозитории его появления не предвидится, как всегда в таких случаях помогают персональные пакеты с launchpad, либо сборка из исходников. Рассмотрим первый вариант установки через ppa.

Итак, приступим к установке.

Если вы думаете что это сложный процесс, то глубоко ошибаетесь, все очень просто, в прочем как и всегда в ubuntu.

Установим необходимые нам дополнительные пакеты:

#apt-get install python-software-properties

#apt-get install python-software-properties

Добавляем в свои источники пакетов дополнительный:

#add-apt-repository ppa:pitti/postgresql

#add-apt-repository ppa:pitti/postgresql

Обновим список:

И теперь уже устанавливаем Postgresql 9.0.1 и pgAdmin III 1.12.0 (на момент написания статьи):

#apt-get install postgresql pgadmin3

#apt-get install postgresql pgadmin3

После установки остановим сервер и запустим, указав кодировку UTF-8:

$sudo -u postgres pg_dropcluster --stop 9.0 main $sudo -u postgres pg_createcluster --start -e UTF-8 9.0 main

$sudo -u postgres pg_dropcluster --stop 9.0 main $sudo -u postgres pg_createcluster --start -e UTF-8 9.0 main

Задаем пароль пользователю, для этого войдем в оболочку postgresql под именем пользователя postgres:

$sudo -u postgres psql postgres

$sudo -u postgres psql postgres

При вводе пароль не будет отображаться, так что после его ввода просто нажмите интер и подтвердите свой пароль, еще раз введя его:

Создадим новую БД mydb:

$sudo -u postgres createdb mydb -e UTF-8

$sudo -u postgres createdb mydb -e UTF-8

Основные операции выполнены и теперь можно работать с сервером Postgresql 9.0.1, используя gui.Запустим pgAdmin III: Приложение->Программирование->pgAdmin III

Далее укажем хост, пользователя, пароль для регистрации БД.

регистрация БД

После удачного соединения три раза кричим «Ура!!!» и начинаем использовать postgresql 9.

pgAdmin

Как я и говорил, все очень просто!

lugnsk.org

PgAdmin

Чтобы подключиться ПГ админ к базе postgres пользователем postgres нужно в файле pg_hba.conf, который используется запущеным сервером изменить значения в строчках md5 на trust. После этого следует перезапустить сервер и подключиться pgAdmin III.

В главном окне программы, структура базы данных не отображается. Вы можете создавать новые объекты, удалять и редактировать существующие объекты, если привилегиями пользователя, которые вы используете на текущее соединение с базой данных позволяют это.

В левой части главного окна показывает дерево со всеми серверами и объектами, которые они содержат.

В правом верхнем углу показывает детали объекта, выбранного в дереве.

Состояние объектов в браузере только обновляется по запросу или после изменения, сделанные с помощью встроенного инструмента. Имейте в виду, что это не распространяется на изменения, внесенные через SQL или других пользователей или других клиентов.

Начало работы

После добавления нужный сервер (ы) в дереве на левой стороне, используя Добавить сервер меню или кнопки на панели инструментов, каждый сервер будет отображаться в верхнем узле "Серверы".

Чтобы открыть подключение к серверу, выберите нужный сервер в дереве, и дважды щелкните по нему или использовать Подключить в меню Tools. Соединение будет установлено, и свойства верхнего уровня объекты извлекаются из базы данных сервера.

Подключение к серверу

Имя сервера, чтобы определить сервер в PGAdmin дерева.

Хоста IP-адрес машины, чтобы связаться, или полное доменное имя.

Номер порта может быть указан.

Служба поле имени службы настроены в pg_service.conf файл.

Поле обслуживания DB используется для определения начальной базы данных, которая подключается к PGAdmin установлены (как опция). В PostgreSQL 8.1 и выше, содержание БД, как правило, называют "Postgres.

Резервное копирование

Резервное копирование диалог представляет собой несколько упрощенный интерфейс для PostgreSQL pg_dump инструмент. Вы можете сделать копию одной таблицы, схемы или полная база данных, в зависимости от выбранного объекта при запуске резервного инструмента.

pg_dump не поддерживает все параметры резервного копирования для всех форматов файлов. В частности, для резервного копирования капли PLAIN формат не может быть использован.

pg_dump

pg_dump -- extract a PostgreSQL database into a script file or other archive file

pg_dump [connection-option...] [option...] [dbname]

Description

pg_dump is a utility for backing up a PostgreSQL database. It makes consistent backups even if the database is being used concurrently. pg_dump does not block other users accessing the database (readers or writers).

The following command-line options control the content and format of the output.

dbname

Specifies the name of the database to be dumped. If this is not specified, the environment variable PGDATABASE is used. If that is not set, the user name specified for the connection is used.

-a

--data-only

Dump only the data, not the schema (data definitions).

This option is only meaningful for the plain-text format. For the archive formats, you can specify the option when you call pg_restore.

-E encoding

--encoding=encoding

Create the dump in the specified character set encoding. By default, the dump is created in the database encoding.

-f file

--file=file

Send output to the specified file. This parameter can be omitted for file based output formats, in which case the standard output is used. It must be given for the directory output format however, where it specifies the target directory instead of a file. In this case the directory is created by pg_dump and must not exist before.

-?

--help

Show help about pg_dump command line arguments, and exit.

studfiles.net

Макросы в pgAdmin. Список таблиц и поля таблицы.

Я работаю программистом и мне часто приходится иметь дело с базами данных. Основная часть моих обязанностей на текущей работе -это разработка схемы БД для Postgresql и создание функций на языке pgSQL. Для разработки кода функций используется программа pgAdmin 3, поставляемая вместе с PostgreSQL. Программа бесплатна, но не всегда удобна. Особенно это касается задач, связанных с созданием структуры СУБД. Для этих целей лучше всего подходит PostgreSQL Maestro, чей дружелюбный интерфейс позволяет упростить и ускорить построение структуры базы.

Однако за долгое время работы с этими программами я заметил, что pgAdmin гораздо стабильней работает, чем PostgreSQL Maestro. Последняя в случае недоступности сервера БД может просто  завершиться с ошибкой, не давая возможности сохранить набранный текст. Другой проблемой этой программы является отображение не в той кодировке сообщений от сервера БД. Из-за этого часто невозможно узнать, в чем причина ошибки того или иного запроса. Поэтому для написания и отладки функций я использую родную программу pgAdmin.

Однако и при написании кода возникает потребность узнать точное наименование таблицы ее структуру. Раньше приходилось постоянно лазить дереву с таблицами и искать нужные названия полей. Это замедляло написание коды. Однако недавно я открыл для себя

замечательную функцию этой программы - макросы.

Макрос - это команда SQL, которая может запускаться по нажатию определенного сочетания клавиш в окне Query Tool.Макросы предназначены для выполнения каких-либо типовых операций.

Чтобы создать макрос, необходимо нажать на команду "Макрос" в главном меню Query Tool. 

В появившемся окне слева выбираем сочетание клавиш, а справа вставляем текст макроса, который будет соответствовать данному сочетанию клавиш. 

Макросу нужно задать имя, а затем нажать кнопку "Сохранить".

 Текст макроса представляет собой обычный запрос, за исключением специального ключевого слова $SELECTION$. В это слово подставляется выделенный при редактировании в Query Tool текст. 

Получается, чтобы узнать какую-либо информацию о таблице, вовсе не обязательно писать полный запрос к этой таблице, достаточно написать ее имя, выделить данное имя и запустить макрос, запрашивающий нужную информацию.

А теперь приведу примеры полезных макросов, которые я использую в своей работе.
  1.  Макрос, получающий список таблиц для схемы public базы данных PostgreSQL.

    SELECT * FROM information_schema.TABLES

    WHERE table_type='BASE TABLE' AND table_schema='public' ORDER BY table_name
  2.  Макрос, получающий список полей в таблице, чье название выделено (очень не хватало этой возможности, когда я перешел с MS SQL Server 2008, в Microsoft Management Studio она была по-умолчанию). SELECT quote_ident(nspname) || '.' || quote_ident(relname) AS table_name, quote_ident(attname) AS field_name, format_type(atttypid,atttypmod) AS field_type, case when attnotnull then ' NOT NULL' else '' end AS null_constraint, case when atthasdef then 'DEFAULT ' || ( SELECT pg_get_expr(adbin, attrelid) FROM pg_attrdef WHERE adrelid = attrelid AND adnum = attnum )::text else '' end AS dafault_value, case when nullif(confrelid, 0) IS NOT NULL then confrelid::regclass::text || '( ' || array_to_string( ARRAY( SELECT quote_ident( fa.attname ) FROM pg_attribute AS fa WHERE fa.attnum = ANY ( confkey ) AND fa.attrelid = confrelid ORDER BY fa.attnum ), ',' ) || ' )' else '' end AS references_to FROM pg_attribute LEFT OUTER JOIN pg_constraint ON conrelid = attrelid AND attnum = conkey[1] AND array_upper( conkey, 1 ) = 1, pg_class, pg_namespace WHERE pg_class.oid = attrelid AND pg_namespace.oid = relnamespace AND relname = btrim( '$SELECTION$' ) AND attnum > 0 AND NOT attisdropped ORDER BY attrelid, attnum;
  Таким образом, когда, в случае разработки, я забываю точное название таблицы, я выполняю команду для первого макроса. И у меня перед глазами появляется весь список таблиц схемы public. А когда мне хочется узнать список полей данной таблицы, то я просто выделяю ее название и запускаю второй макрос. Теперь разработка PgSql-функций для меня значительно ускорилась :)

kirillov-blog.blogspot.com

Pgadmin3 Руководство На Русском

Текстом на иностранных языках. Руководство обозревателя [ 6 ] Что входит в пакет?

Я давно хотел попробовать поставить 1С 8.3.9 на Linux сервер. Обычно я работал либо с файловой конфигурацией, либо со стандартной Windows+MsSql. Но хотелось попробовать развернуть базу самому и посмотреть, насколько это сложно.

Сразу скажу, что на Инфостарте была уже по установке на CentOs, но во-первых я делал установку несколько по-другому, во-вторых я рассмотрел вопрос включения отладки по http, и в-третьих я хотел сделать более пошаговую иструкцию, с нуля. Кстати сказать, остальные инструкции которые я находил, были либо устаревшими либо недостаточно подробными. А уж вопрос отладки серверных процедур по http для Linux-сервера я очень долго решал, и думаю он будет очень полезен. Установка сервера DigitalOcean Оказывается, у облачного провайдера DigitalOcean можно получить 10$. И всего за 5$ развернуть Droplet с установленной Ubuntu 16.04 x64. И вот ваша виртуальная машина уже готова.

Установка Putty Немного непривычно, но с сервером придется работать через консольные команды. Для этого лучше всего подойдет утилита Putty. Среди прочих достоинств, она умеет вставлять в консоль текст по клику правой кнопки мышки или по нажатию shift-insert, что поможет в дальнейшей работе.

Установка PostgreSQL 9.5 пропатченного Пропатченная для 1С сборка PostgreSql лежит на, я взял версию 9.5. Также там есть и инструкции по установке, я их просто скопировал в окно putty. Sudo sh -c 'echo 'deb $(lsb_release -cs) main' >/etc/apt/sources.list.d/postgrespro-1c.list' wget --quiet -O - sudo apt-key add - && sudo apt-get update sudo apt-get install postgresql-pro-1c-9.5 После установки в консоли будет видно в каких папках установился PostgreSql, запомните где находится папка config. В Проверить работу сервера Postgresql можно с помощью команды service postgresql status Если установка была успешна, то вы увидите зеленую надпись 'Active'.

Установка Listen_adresses для соединения с pgAdmin. После установки PostgreSql мне понадобилось проверить как он работает, и я стал соединяться с ним с помощью PgAdmin 1.22.1. Однако, соединиться не вышло, оказалось, в конфигурации listen_addresses='*'.

И тут меня встретил консольный(!) текстовый редактор vi. Это вам не нежно любимый Notepad++ с дополнениями. Впрочем, после небольшого чтения мануалов, оказалось что с редактором просто работать: по умолчанию файл открывается на чтение; для редактирования нужно перейти в insert mode нажав i; после редактирования нажать Esc и набрать две команды:w - для сохранения и команду:q для выхода из редактора.

Итак, выполним команду открытия postgresql.conf sudo vi /etc/postgresql/9.5/main/postgresql.conf Найдем в этом файле listen_addresses=' и поменяем на listen_addresses='*'. После чего перезапустим postgresql с помощью команды service postgresql restart Проверить какие сервисы сейчас слушают порты можно с помощью команды netstat -tlp И у вас должна быть примерно такая картина: (здесь у меня уже включен сервер 1с и отладка) Шаг 5. Установка пароля на пользователя postgres Далее получилось так, что сервер был запущен и listen_addresses были установлены, но возникала ошибка авторизации типа 'пользователь postgres не прошел проверку подлинности по паролю'. Как, по умолчанию у него пароль не установлен. Для его установки я поменял пользователя с root на postgresql, зашел в терминал postgresql и выполнил команду password. Su postgres psql password Шаг 6.

Соединение через pgadmin 3 (ver 1.22.1) После всех этих настроек, соединение удалось. Как позже оказалось, базу на этом этапе через pgadmin создавать не надо!

Главное что есть возможность подключиться и посмотреть таблицы БД. Проверьте что у базы postgres стоит сопоставление(collation) ru_RU.UTF8 Шаг 7. Установка необходимых пакетов для 1с По нескольким статьям я собрал список пакетов, которые могут понадобиться для работы 1С: imagemagick unixodbc ttf-mscorefonts-installer t1utils libgsf-bin Вот тут обычно могут быть проблемы, но у меня все установилось гладко. Кстати, при установке 1С конфигурирование шрифтов с помощью выполнения config_system больше не нужно, так как Утилита конфигурирования для работы в ОС Linux config_systemи шрифты должны подхватываться автоматически из каталогов типа /usr/share/fonts/msttfcorefonts Шаг 8. Смотреть Фильм Сумерки В Переводе Сергея Притулы далее. Передача на сервер и установка 1С. Для передачи скачанных deb пакетов на сервер, я воспользовался входящей в Putty утилитой PSFTP.

kuchasnow.zzz.com.ua