Получение справки
В этом разделе рассмотрим способы получения справочной информации при работе с клиентом psql:
- общая помощь;
- помощь по метакомандам psql;
- помощь по командам SQL.
В данном разделе для удобства восприятия некоторые выводы команд представлены в переводе на русский язык. В реальной системе вы увидите англоязычные сообщения.
Общая помощь
При работе в psql первое, с чем сталкивается пользователь – приветственное сообщение с подсказкой:
[student@ServerName ~]$ psql
psql (15.5)
Введите "help", чтобы получить справку.
Введем команду help:
student=> help
Вы используете psql - интерфейс командной строки к PostgreSQL. Азы:
- `\copyright` - условия распространения
- `\h` - справка по операторам SQL
- `\?` - справка по командам psql
- `\g` или `;` в конце строки - выполнение запроса
- `\q` - выход
Помощь по метакомандам psql
Метакоманды – это встроенные команды самого клиента psql, начинающиеся с обратной косой черты (\). Они не являются SQL-запросами и выполняются непосредственно клиентом.
Подсказку по ним можно получить командой \?:
student=> \?
General
\copyright show PostgreSQL usage and distribution terms
\crosstabview [COLUMNS] execute query and display result in crosstab
...
В выводе \? все команды psql представлены по категориям:
General— команды общего назначения;Help— справочные команды;Query Buffer— команды работы с буфером запроса;Input/Output— команды, перенаправляющие ввод\вывод;Informational— команды для просмотра системного каталога;Large Objects— команды для работы с «большими объектами»;Formatting— команды настройки форматирования вывода запроса SQL;Connection— управления подключением;Operating System— команды взаимодействия с ОС;Variables— управление переменными psql.
Дополнительные варианты справки по метакомандам:
\?или\? commands— помощь по метакомандам;\? options— помощь по опциям командной строки psql;\? variables— помощь по специальным встроенным переменным.
В зависимости от настроек системы при просмотре длинных списков команд может быть запущена программа постраничного просмотра – less или иной pager. Для выхода из режима просмотра нажмите клавишу q. Клиент psql автоматически запускает программу постраничного просмотра и перенаправляет в нее вывод, когда выводимое число строк не помещается на экран.
Программа постраничного просмотра настраивается переменной окружения PSQL_PAGER. Настройку можно сделать в файле .psqlrc или помощью команды \setenv.
Помощь по командам SQL
Для получения справки по SQL-командам используется метакоманда \h. Справку по какой-либо конкретной SQL-команде можно получить при помощи \h <SQL_команда>:
student=> \h set
Command: SET
Description: change a run-time parameter
Syntax:
SET [ SESSION | LOCAL ] configuration_parameter { TO | = } { value | 'value' | DEFAULT }
SET [ SESSION | LOCAL ] TIME ZONE { value | 'value' | LOCAL | DEFAULT }
URL: https://www.postgresql.org/docs/15/sql-set.html
В данной справочной информации находятся описание команды, синтаксис и ссылка на соответствующий раздел документации PostgreSQL, где представлена более подробная информация об использовании данной SQL-команды.
Клиент psql должен соответствовать версии сервера. Если версии различаются, в справке psql можно получить устаревшую или неполную информацию о команде SQL, которая была добавлена или переработана в одной из следующих версий PostgreSQL (и, наоборот, если утилита psql версии новее, чем сервер).
По умолчанию psql печатает собственную версию в первой строке при запуске в интерактивном режиме.
К слову, несмотря на то, что почти всегда поддерживается обратная совместимость, всегда следует использовать все серверные утилиты тех версий, которые были установлены из соответствующего пакета, из которого установлен экземпляр СУБД, а после обновления версии сервера следует использовать и утилиты из пакета новой версии.