Menjalankan query PostgreSQL dari baris perintah

Aku dimasukkan data ke dalam tabel....Aku mau lihat sekarang seluruh tabel dengan baris dan kolom dan data. Bagaimana saya bisa menampilkannya melalui perintah?

psql -U username -d mydatabase -c 'SELECT * FROM mytable'

Jika anda're baru untuk postgresql dan asing dengan menggunakan alat baris perintah psql maka ada beberapa membingungkan perilaku yang anda harus menyadari ketika anda've memasuki sesi interaktif.

Misalnya, memulai sesi interaktif:

psql -U username mydatabase 
mydatabase=#

Pada titik ini anda dapat memasukkan query secara langsung, tapi anda harus ingat untuk menghentikan query dengan titik koma ;

Misalnya:

mydatabase=# SELECT * FROM mytable;

Jika anda lupa titik koma maka ketika anda menekan enter, anda akan mendapatkan apa-apa pada baris anda kembali karena psql akan dengan asumsi bahwa anda belum selesai memasukkan kueri anda. Hal ini dapat menyebabkan segala macam kebingungan. Misalnya, jika anda memasukkan query yang sama anda akan memiliki kemungkinan membuat kesalahan sintaks.

Sebagai percobaan, mencoba mengetik mencegah penyadapan yang anda inginkan pada prompt psql kemudian tekan enter. psql diam-diam akan menyediakan anda dengan baris baru. Jika anda memasukkan tanda titik koma pada baris baru, dan kemudian tekan enter, maka anda akan menerima GALAT:

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

Aturan praktis adalah: Jika anda tidak menerima tanggapan dari psql tapi kau mengharapkan setidaknya SESUATU, kemudian anda lupa titik koma ;

Komentar (2)
SELECT * FROM my_table;

di mana my_table adalah nama dari meja anda.

EDIT:

psql -c "SELECT * FROM my_table"

atau hanya psql dan kemudian ketik pertanyaan anda.

Komentar (10)

Jika anda DB dilindungi kata sandi, maka solusi akan sama:

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

Buka "SQL Shell (psql)" dari Aplikasi anda (Mac).

Klik enter untuk pengaturan default. Masukkan password jika diminta.

*) Type \? untuk membantu

*) Type \conninfo untuk melihat pengguna yang tersambung sebagai.

*) Type \l untuk melihat daftar Database.

*) Menghubungkan ke database dengan \c <Nama DB>, misalnya \c GeneDB1

Anda harus melihat kunci perubahan yang cepat ke DB baru, seperti:

*) Sekarang kau're dalam DB, anda ingin mengetahui Skema untuk itu DB. Perintah yang terbaik untuk melakukan ini adalah \dn.

Perintah lain yang juga bekerja (tetapi tidak baik) adalah pilih schema_name dari information_schema.schemata; dan pilih nspname dari pg_catalog.pg_namespace;:

-) Sekarang bahwa anda memiliki Skema, anda ingin mengetahui tabel dalam Skema. Untuk itu, anda dapat menggunakan dt perintah. Misalnya \dt "GeneSchema1".*

*) Sekarang anda dapat melakukan query. Misalnya:

*) Berikut adalah apa yang di atas DB, Skema, dan Tabel terlihat seperti di pgAdmin:

Komentar (1)
  1. Buka command prompt dan masuk ke direktori di mana Postgres diinstal. Dalam kasus saya saya Postgres jalan adalah "D:\TOOLS\Postgresql-9.4.1-3".Setelah itu pindah ke direktori bin Postgres.Jadi command prompt menunjukkan sebagai "D:\TOOLS\Postgresql-9.4.1-3\bin>,"
  2. Sekarang tujuan saya adalah untuk memilih "UserName" dari tabel pengguna menggunakan "Id" nilai.Jadi query database adalah "Pilih u."UserName" dari pengguna u Dimana u."Id"=1".

Query yang sama dituliskan seperti di bawah ini untuk psql command prompt postgres.

D:\TOOLS\Postgresql-9.4.1-3\bin>psql -U postgres -d DatabaseName -h localhost - t -c "Select u.\"UserName\" dari pengguna u Dimana u.\"UserId\"=1;

Komentar (0)

Saya tidak memiliki keraguan di @Memberikan jawaban. Tapi saya menghadapi beberapa masalah yang kadang-kadang seperti jika nama kolom yang sama untuk setiap reserved kata kunci postgresql seperti alami dalam hal ini mirip SQL adalah sulit untuk dijalankan dari baris perintah sebagai "\natural\" akan diperlukan dalam Query lapangan. Jadi pendekatan saya adalah untuk menulis SQL dalam file terpisah dan menjalankan SQL file dari baris perintah. Ini memiliki keuntungan lain juga. Jika anda harus mengubah query untuk script anda tidak perlu menyentuh file script atau perintah. Hanya mengubah file SQL seperti ini

psql -h localhost -d database -U postgres -p 5432 -a -q -f /path/to/the/file.sql
Komentar (0)

Untuk jenis tertentu dari pernyataan anda dapat menemukan lebih tepat untuk menggunakan Azure Data Studio - untuk segala sesuatu yang lain datang dengan built-in command line. Menggunakan studio anda dapat menemukan mengetik laporan dan membaca output lebih nyaman.

Ikuti langkah-langkah di bawah ini:

  1. Menginstal Azure Data Studio - adalah cross-platform modern editor data yang terfokus pada pengembangan; itu adalah open source dan extensible - dua hal yang PostgreSQL sendiri didasarkan pada;
  2. Menginstal PostgreSQL ekstensi
  3. Terhubung ke lokal atau remote server:

  1. Fokus pada menulis dan mengeksekusi SQL hanya:

Ada banyak fitur bagus seperti tabungan koneksi, membuat server kelompok dan bahkan built-in terminal jika anda lebih nyaman melakukan beberapa tugas melalui psql.

Komentar (0)