Eksport Postgres ke CSV

Eksport Postgres Ke Csv



CSV, atau Comma Separated Values, ialah format fail yang digunakan secara meluas untuk menyimpan data jadual. Ia menyediakan cara yang mudah dan ringan untuk mewakili data di mana setiap baris dalam fail sepadan dengan baris, dan koma memisahkan nilai dalam setiap baris.

Selain itu, fail CSV sangat serasi dengan pelbagai bahasa pengaturcaraan yang komprehensif yang menjadikannya pilihan ideal untuk pertukaran data antara sistem yang berbeza.
Dalam tutorial ini, kami akan meneroka pelbagai kaedah dan teknik yang boleh kami gunakan untuk mengeksport data daripada PostgreSQL ke dalam format CSV.

Keperluan:

Tutorial ini menggunakan pangkalan data sampel Pagila yang disediakan pada halaman PostgreSQL rasmi. Walau bagaimanapun, kaedah ini berfungsi pada mana-mana pangkalan data PostgreSQL.







Kami juga menganggap bahawa anda mempunyai akses kepada utiliti PSQL atau pgAdmin 4 dan ke atas untuk berinteraksi dengan kluster PostgreSQL anda.



Eksport PostgreSQL ke CSV: Salin Perintah

Kaedah paling mudah untuk mengeksport jadual pangkalan data ke dalam format CSV adalah menggunakan arahan 'salinan' dalam PostgreSQL.



Mulakan dengan menyambung ke pangkalan data sasaran anda menggunakan kaedah pilihan anda. Dalam tutorial ini, kami menggunakan alat pgAdmin.





Setelah disambungkan ke pangkalan data, pilih jadual dari mana anda ingin mengeksport data. Jika anda menggunakan alat PSQL, anda boleh menggunakan arahan '\dt' untuk menunjukkan semua jadual dalam pangkalan data semasa.

\dt

Cari jadual yang anda ingin eksport dan catatkan namanya.



Kami boleh mengeksport data daripada jadual PostgreSQL ke fail CSV menggunakan arahan 'salin'. Perintah ini membolehkan kami menyalin data antara jadual dan fail dalam pelbagai format termasuk CSV.

Untuk mengeksport jadual ke dalam fail CSV, kami boleh menggunakan sintaks seperti yang ditunjukkan dalam yang berikut:

SALIN nama_jadual KE 'laluan_fail' DENGAN (FORMAT CSV, HEADER);

Gantikan table_name dan parameter fail_path dengan jadual sasaran anda dan laluan ke fail CSV.

Tambahkan pilihan HEADER pada penghujung jika anda ingin memasukkan pengepala lajur dalam fail yang dieksport. PostgreSQL mengeksport data tanpa nama lajur secara lalai jika anda meninggalkan pilihan ini.

Pertimbangkan contoh berikut yang menggunakan arahan 'salin' untuk mengeksport data daripada jadual filem dalam pangkalan data Pagila ke fail CSV yang dipanggil 'fim.csv' dalam direktori kerja semasa:

SALIN filem KE './film.csv' DENGAN (FORMAT CSV, HEADER);

CATATAN : Dalam sesetengah keadaan, arahan 'salinan' gagal mengeksport data apabila menggunakan laluan relatif. Pastikan anda menggunakan laluan mutlak untuk kekal di sisi selamat.

Sebaik sahaja anda menjalankan arahan 'salin', anda akan melihat mesej yang menunjukkan bilangan baris yang disalin.

Contoh Output:

SALINAN 1000

CATATAN : Dengan utiliti PSQL, gunakan arahan “\copy” dan bukannya arahan “copy”. Ini melakukan tindakan pada bahagian klien dan bukannya bahagian pelayan.

Eksport PostgreSQL ke CSV: PgAdmin 4

Kami boleh mengeksport jadual pangkalan data PostgreSQL ke CSV menggunakan alat pgAdmin jika anda lebih suka antara muka grafik.

Anda boleh mengikuti langkah yang digariskan berikut untuk mencapainya:

Lancarkan PgAdmin dan sambung ke pangkalan data PostgreSQL anda.

Navigasi ke jadual yang anda mahu eksport dalam penjelajah objek.

Klik kanan pada jadual dan pilih 'Import/Eksport'.

Pilih tab 'Eksport' dalam dialog 'Import/Eksport', dan nyatakan laluan fail output dan nama fail dalam medan 'Nama Fail'.

Pilih pilihan format 'CSV'.

Secara pilihan, tandai kotak 'Sertakan nama lajur dalam baris pertama' untuk menyertakan pengepala.

Klik butang 'OK' atau 'Eksport' untuk memulakan proses eksport.

Setelah selesai, anda seharusnya melihat proses bermula dan memproses mesej status penyelesaian dari sudut kanan bawah.

Kesimpulan

Kami meneroka cara kami boleh menggunakan salinan, \copy, dan utiliti pgAdmin untuk mengeksport jadual pangkalan data yang diberikan kepada fail CSV dalam PostgreSQL.