Sumber:
psql -c "COPY (SELECT * FROM mytable WHERE ...) TO STDOUT" > mytable.copy
Tujuan:
psql -c "COPY mytable FROM STDIN" < mytable.copy
Ini mengasumsikan mytable memiliki skema dan urutan kolom yang sama di sumber dan tujuan. Jika tidak, Anda dapat mencoba STDOUT CSV HEADER
dan STDIN CSV HEADER
bukannya STDOUT
dan STDIN
, tapi saya belum mencobanya.
Jika Anda memiliki pemicu khusus di mytable, Anda mungkin perlu menonaktifkannya saat impor:
psql -c "ALTER TABLE mytable DISABLE TRIGGER USER; \
COPY mytable FROM STDIN; \
ALTER TABLE mytable ENABLE TRIGGER USER" < mytable.copy