Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PostgreSQL psql terminal command

I'm trying to get psql to format nicely and am following the docs here. Right now, whenever I do a query on tables with lots of columns, no matter how big I make my screen each line overflows into the next line and producing a whole screen of unreadable junk.

The docs (link is above) say there's a way to align columns nicely for more readable output.

Normally, to start psql, I just type:

psql

and hit Enter. Now I'm trying:

psql \pset format aligned

And getting an error:

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

Any ideas as to how I could get these command-line args to work for me?

like image 574
IAmYourFaja Avatar asked Jan 24 '12 16:01

IAmYourFaja


People also ask

What is the psql command?

psql is a terminal-based front-end to PostgreSQL. It enables you to type in queries interactively, issue them to PostgreSQL, and see the query results. Alternatively, input can be from a file or from command line arguments.


2 Answers

These are not command line args. Run psql. Manage to log into database (so pass the hostname, port, user and database if needed). And then write it in the psql program.

Example (below are two commands, write the first one, press enter, wait for psql to login, write the second):

psql -h host -p 5900 -U username database \pset format aligned 
like image 155
Szymon Lipiński Avatar answered Sep 17 '22 21:09

Szymon Lipiński


Use \x Example from postgres manual:

    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 + $1 WHERE bid = $2;     calls      | 3000     total_time | 20.716706     rows       | 3000     -[ RECORD 2 ]------------------------------------------------------------     userid     | 10     dbid       | 63781     query      | UPDATE tellers SET tbalance = tbalance + $1 WHERE tid = $2;     calls      | 3000     total_time | 17.1107649999999     rows       | 3000     -[ RECORD 3 ]------------------------------------------------------------     userid     | 10     dbid       | 63781     query      | UPDATE accounts SET abalance = abalance + $1 WHERE aid = $2;     calls      | 3000     total_time | 0.645601     rows       | 3000 
like image 21
n0nSmoker Avatar answered Sep 20 '22 21:09

n0nSmoker