Как работать с psql под windows

Как работать с psql под windows

psql — это программа для интерактивной работы с запросами входящая в состав установочных дистрибутивов субд PostgreSQL.

Изначально PostgreSQL позиционируется как субд заточенная под использование на unix системах. Вариант работы в Windows несколько отличается. При работе с программой psql мы можем передавать запросы, к примеру, получив их из файла или передавать в качестве аргументов в командной строке.

  1. Получение запросов из файла вывод на экран
  2. Получение запросов из файла вывод в файл
  3. Получение запросов в аргументах через CMD

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

Для выполнения запросов с использованием psql переходим папку куда устанавливали PostgreSQL в каталог bin у меня это — C:\Program Files\PostgreSQL\11.9-1.1C\bin> и начинаем набирать команды. Дальше по тексту примеры будут указаны с учетом того, что вы в консоли перешли в указанный выше каталог командой cd

Вариант с получением запросов из файла предполагает поочередное выполнение запросов, которые предварительно записаны в какой-то файл. Например:

В обычном текстовом редакторе создаем 2 запроса.

Каждый запрос может занимать несколько строк, наличие точки с запятой означает конец запроса.

В запросе мы обращаемся к стандартной таблице PostgreSQL в которой хранятся все параметры сервера. Общий вид строки с командами у меня получился такой:

psql.exe —dbname test —username postgres -f «D:/psqlscript.txt»

psql.exe — файл программы

—dbname — имя базы данных к которой обращаемся

—username — пользователь

-f — ключ указывающий, что запросы в файле.

Результат выполнения:

Каждый запрос выполнился по отдельности и результат выполнения был выведен на экран.

Тот же вариант с выводом результатов в отдельный файл может понадобиться для удобства просмотра результата. Так как в окно консоли мало что влезает, а в текстовом файле будет как горизонтальная так и вертикальная прокрутка(скрол). К предыдущей команде добавляем вывод:

psql.exe —dbname test —username postgres -f «D:/psqlscript.txt» > «D:/123.txt»

Рассмотрим вариант взаимодействия с psql через стандартную консоль CMD.

Чтобы передать запрос в качестве аргумента или опции программы psql.exe необходимо видоизменить предыдущую строку команд, вместо ключа -f, надо указать ключ —command и через пробел в двойных кавычках написать запрос.

psql.exe —dbname test —username postgres —command «select * from pg_settings where name=’data_directory’;»  

результатом выполнения данной команды будет «каша» на экране, в которой сложно ориентироваться:

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

Теперь все отлично видно и можно нормально проанализировать всю информацию по параметру, который нас интересовал.



( Просмотров: 217 )
21 Дек 2020
 

Ваш отзыв