Для тех, кто переходит с MySQL / MariaDB на PostgreSQL часто неочевидно, как можно банально посмотреть имеющиеся базы данных, таблицы и поля таблиц.
Речь тут идёт не о различии HeidiSQL и PgAdmin, а о работе в командной строке, то есть mysql и psql.
Довольно просто в psql подключиться к нужному хосту, под нужным пользователем:
psql -U {{ user }} -d {{ dbname }} -h {{ host }}
А вот USE {{ dbname }}
для смены базы данных уже не прокатит.
Смена базы данных в Postgres делается с помощью команды \c
(connect):
\c {{ dbname }}
Аналог SHOW DATABASES
для PostgreSQL – \l
(list):
\l
Если же мы хотим посмотреть список таблиц в базе данных, то вместо SHOW TABLES
пишем \dt
(display tables):
\dt
Структуру таблицы мы смотрим не через DESCRIBE {{ table }}
, а через \d
:
\d {{ table }}
– что важно, тут же будут показаны созданные для таблицы индексы и внешние ключи.
Реже используемые:
\du
- список всех пользователей и их привилегий.\dt+
- список всех таблиц с описанием.\dt *s*
- список всех таблиц, содержащих s в имени.\i {{ file }}
- выполнить команды из файла.\o {{ file }}
- сохранить результат запроса в файл.\a
- переключение между режимами выравнивания.
Ну и самое важное – выйти из psql можно с помощью отправки символа окончания ввода (EOF) –
через Ctrl+D, или же командой \q
.