Menggunakan perintah\ copy untuk mengimpor data ke tabel pada instance Postgre DB SQL - Layanan Basis Data Relasional Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan perintah\ copy untuk mengimpor data ke tabel pada instance Postgre DB SQL

Perintah Postgre adalah SQL \copy perintah meta yang tersedia dari alat klien interaktif. psql Anda dapat menggunakan \copy untuk mengimpor data ke dalam tabel pada instance Postgre SQL DB AndaRDS. Untuk menggunakan perintah \copy, Anda harus membuat struktur tabel pada instans DB target terlebih dahulu agar \copy memiliki tujuan untuk salinan data.

Anda dapat menggunakan \copy untuk memuat data dari file values (CSV) yang dipisahkan koma, seperti file yang telah diekspor dan disimpan ke workstation klien Anda.

Untuk mengimpor CSV data ke target RDS instans Postgre SQL DB, pertama-tama sambungkan ke instans DB target menggunakan. psql

psql --host=db-instance.111122223333.aws-region.rds.amazonaws.com --port=5432 --username=postgres --password --dbname=target-db

Anda kemudian menjalankan perintah \copy dengan parameter berikut untuk mengidentifikasi target untuk data dan formatnya.

  • target_table— Nama tabel yang harus menerima data yang disalin dari CSV file.

  • column_list – Spesifikasi kolom untuk tabel.

  • 'filename'— Jalur lengkap ke CSV file di workstation lokal Anda.

\copy target_table from '/path/to/local/filename.csv' WITH DELIMITER ',' CSV;

Jika CSV file Anda memiliki informasi judul kolom, Anda dapat menggunakan versi perintah dan parameter ini.

\copy target_table (column-1, column-2, column-3, ...) from '/path/to/local/filename.csv' WITH DELIMITER ',' CSV HEADER;

Jika \copy perintah gagal, Postgre SQL mengeluarkan pesan kesalahan.

Membuat instans DB baru di lingkungan Database Preview menggunakan perintah psql dengan perintah meta \copy seperti yang ditunjukkan pada contoh berikut. Contoh ini menggunakan source-table sebagai nama tabel sumber, source-table.csv sebagai file .csv, dan target-db sebagai basis data target:

Untuk Linux, macOS, atau Unix:

$psql target-db \ -U <admin user> \ -p <port> \ -h <DB instance name> \ -c "\copy source-table from 'source-table.csv' with DELIMITER ','"

Untuk Windows:

$psql target-db ^ -U <admin user> ^ -p <port> ^ -h <DB instance name> ^ -c "\copy source-table from 'source-table.csv' with DELIMITER ','"

Untuk detail lengkap tentang \copy perintah, lihat halaman psql di SQL dokumentasi Postgre, di bagian Meta-Commands.