Вам не хватает чего-то простого: как использовать имеющуюся документацию. Я предлагаю это, потому что ваш вопрос довольно прост, и PostgreSQL имеет обширную документацию, которая будет очень полезна в будущем - это может сэкономить вам много времени.
У вас есть несколько вариантов:
- посмотрите документацию :)
- выполнить
\?
из командной строки для справки по команде
- посмотрите на man запись страницы
Хотя следующее не поможет с командой выполнения, например \c or \connect
, которая вам нужна; для других команд, которые ставят под сомнение SQL, вы можете установить ECHO_HIDDEN для отображения системных запросов.
Пример:
psql -E <rest of your db connection>
-- then do something like "\d"
Затем вы увидите, как Postgres выполняет запросы:
postgres@ubuntu:/home/fooUser$ psql -E
postgres=# \d
********* QUERY **********
SELECT n.nspname as "Schema",
c.relname as "Name",
CASE c.relkind WHEN 'r' THEN 'table' WHEN 'v' THEN 'view' WHEN 'i' THEN 'index' WHEN 'S' THEN 'sequence' WHEN 's' THEN 'special' END as "Type",
pg_catalog.pg_get_userbyid(c.relowner) as "Owner"
FROM pg_catalog.pg_class c
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind IN ('r','v','S','')
AND n.nspname <> 'pg_catalog'
AND n.nspname <> 'information_schema'
AND n.nspname !~ '^pg_toast'
AND pg_catalog.pg_table_is_visible(c.oid)
ORDER BY 1,2;
**************************