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?
249
7
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:
Pada titik ini anda dapat memasukkan query secara langsung, tapi anda harus ingat untuk menghentikan query dengan titik koma
;
Misalnya:
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:Aturan praktis adalah: Jika anda tidak menerima tanggapan dari
psql
tapi kau mengharapkan setidaknya SESUATU, kemudian anda lupa titik koma;
di mana
my_table
adalah nama dari meja anda.EDIT:
atau hanya
psql
dan kemudian ketik pertanyaan anda.Jika anda DB dilindungi kata sandi, maka solusi akan sama:
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;
danpilih 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:
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;
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
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:
Ada banyak fitur bagus seperti tabungan koneksi, membuat server kelompok dan bahkan built-in terminal jika anda lebih nyaman melakukan beberapa tugas melalui
psql
.