Psql

From Linuxwiki
Revision as of 09:57, 6 April 2023 by Linuxwiki>Wikiadmin (Interaktivt läge)
Jump to navigation Jump to search

psql, olika parametrar

-h <hostname>
-p <port>
-d <database>
-U <user>

Exempel

psql -h myhost -p 5432 -d mydb -U myuser
psql postgresql://myuser@myhost:5432/mydb

mydb och myuser är samma som operativsystemets användarnamn. myhost är på ett unix-system samma som socket-connection.

Köra direkt från promten och sql-script

För att köra ett kommando direkt från promten och få tillbaka svaret:

psql -c "SELECT current_time"
   timetz
---------------
18:48:32.484+01
(1 row)


Vill man istället exekvera en fil med flera SQL-satser:

psql -f examples.sql


Det går även att kombinera -c och -f

psql -c "SELECT current_time" -f examples.sql "SELECT current_time"


Interaktivt läge

Startar man psql utan -c eller -f så får man såklart ett interaktivt läge där man anger sina kommandon som man önskar. Bra att börja med är:

postgres=# \help

Avsluta:

postgres=# \quit \q funkar också men inte \exit.

Hjälp

Förutom \help så finns \h och \?. \h ger hjälp om ett specifikt sql-kommando och \? ger hjälp om ett meta-kommando (t ex \quit).

Exempel:

postgres=# \h DELETE
Command: DELETE
Description: Delete rows of a table
Syntax:
[ WITH [ RECURSIVE ] with_query [, ...] ]
DELETE FROM [ ONLY ] table [ [ AS ] alias ]
[ USING usinglist ]
[ WHERE condition | WHERE CURRENT OF cursor_name ]
[ RETURNING * | output_expression [ AS output_name ] [,]]


Kategori:PostgreSQL