PostgreSQL queries uitvoeren vanaf de opdrachtregel

Ik heb data in een tabel gezet....Ik wil nu de hele tabel zien met rijen en kolommen en data. Hoe kan ik het laten zien via commando?

psql -U gebruikersnaam -d mijndatabase -c 'SELECT * FROM mytable'

Als je'nieuw bent bij postgresql en onbekend met het gebruik van de command line tool psql dan is er wat verwarrend gedrag waar je je bewust van moet zijn als je'een interactieve sessie bent binnengegaan.

Bijvoorbeeld, start een interactieve sessie:

psql -U username mydatabase 
mydatabase=#

Op dit punt kunt u direct een query invoeren, maar u moet niet vergeten om de query te beëindigen met een puntkomma ;

Bijvoorbeeld:

mydatabase=# SELECT * FROM mytable;

Als je de puntkomma vergeet, en je drukt op enter, dan krijg je niets op je return regel omdat psql er dan vanuit gaat dat je nog niet klaar bent met het invoeren van je query. Dit kan tot allerlei verwarring leiden. Als u bijvoorbeeld dezelfde query opnieuw invoert, zult u waarschijnlijk een syntax-fout hebben gemaakt.

Probeer bij wijze van experiment eens een willekeurige rommel in te typen op de psql prompt en druk dan op enter. psql zal je stilletjes een nieuwe regel geven. Als je op die nieuwe regel een puntkomma invoert en dan op enter drukt, dan krijg je de ERROR:

mydatabase=# asdfs 
mydatabase=# ;  
ERROR:  syntax error at or near "asdfs"
LINE 1: asdfs
    ^

De vuistregel is: Als je geen antwoord van psql hebt gekregen, maar je verwachtte wel iets, dan ben je de puntkomma ; vergeten.

Commentaren (2)
SELECT * FROM my_table;

waarbij mijn_tabel de naam van uw tabel is.

EDIT:

psql -c "SELECT * FROM my_table"

of gewoon psql en typ dan je queries.

Commentaren (10)

Als je DB beveiligd is met een wachtwoord, dan zou de oplossing zijn:

PGPASSWORD=password  psql -U username -d dbname -c "select * from my_table"
Commentaren (1)