Команда терминала PostgreSQL psql

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

документы (ссылка выше) говорят, что есть способ выровнять столбцы для более читаемого вывода.

нормально, для начала psql, Я просто типа:

psql в

и нажмите Enter. Теперь я пытаюсь:

формат psql pset выровнен

и получение ошибки:

could not change directory to "/root"
psql: warning: extra command-line argument "aligned" ingored
psql: FATAL: Indent authentication failed for user "format"

есть идеи о том, как я мог бы заставить эти args командной строки работать на меня?

4 ответов


это не args командной строки. Запустить psql. Управляйте входом в базу данных (при необходимости передайте имя хоста, порт, пользователя и базу данных). А затем напишите его в программе psql.

пример (ниже приведены две команды, напишите первую, нажмите enter, дождитесь входа в psql, напишите вторую):

psql -h host -p 5900 -U username database
\pset format aligned

использовать \x Пример из руководства postgres:

    postgres=# \x
    postgres=# SELECT * FROM pg_stat_statements ORDER BY total_time DESC LIMIT 3;
    -[ RECORD 1 ]------------------------------------------------------------
    userid     | 10
    dbid       | 63781
    query      | UPDATE branches SET bbalance = bbalance +  WHERE bid = ;
    calls      | 3000
    total_time | 20.716706
    rows       | 3000
    -[ RECORD 2 ]------------------------------------------------------------
    userid     | 10
    dbid       | 63781
    query      | UPDATE tellers SET tbalance = tbalance +  WHERE tid = ;
    calls      | 3000
    total_time | 17.1107649999999
    rows       | 3000
    -[ RECORD 3 ]------------------------------------------------------------
    userid     | 10
    dbid       | 63781
    query      | UPDATE accounts SET abalance = abalance +  WHERE aid = ;
    calls      | 3000
    total_time | 0.645601
    rows       | 3000

psql --pset=format=FORMAT

большой для выполнения запросов из командной строки, например,

psql --pset=format=unaligned -c "select bandanavalue from bandana where bandanakey = 'atlassian.confluence.settings';"

шаги для подключения к postgresql v9.3 сервера из командной строки windows-7 следующие -

  1. перейти в начало --> все программы --> postgresql 9.3 --> SQL Shell (psql)
  2. просто введите данные, запрошенные сервером postgres, я показал фрагмент журнала из моего CMD.

(Примечание: пользователь "postgres" будет суперпользователем для сервера postgresql, Pwd должен быть тем, который вы ввели во время установки postgresql)

Server [localhost]: localhost
Database [postgres]: postgres
Port [5432]: 5432
Username [postgres]: postgres
Password for user postgres:
psql (9.3.5)
WARNING: Console code page (437) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.
Type "help" for help.

postgres=# CREATE ROLE prateek LOGIN PASSWORD 'test_123' NOINHERIT CREATEDB;
CREATE ROLE
postgres=#