U hoeft geen tijdelijke tabel te maken voor COPY TO
. Elke zoekopdracht kan de bron zijn sinds PostgreSQL 8.2 .
COPY (SELECT * FROM view1) TO '/var/lib/postgres/myfile1.csv';
Lees de handleiding over COPY . Maak de benodigde tabellen lokaal aan met
CREATE table tbl1 AS
SELECT * FROM view1
LIMIT 0; -- no data, just the schema.
Kopieer de DDL-instructies en maak alle tabellen in de doel-db. pgAdmin is een handige GUI om dat mee te doen. Verwijder de lege tabellen in de bron-db opnieuw. Gegevens laden met
COPY tbl1 FROM '/var/lib/postgres/myfile1.csv';
Dump / restore zoals @wildplasser het beschrijft, is een andere manier.
Voor een eenmalige overboeking is een van die methoden aan te raden. Voor herhaalde toepassing, dblink of SQL/MED (Beheer van externe gegevens) is misschien meer geschikt.