PgSQL update table from csv

Üdv!

PostgreSQL táblában szeretnék sorokat frissíteni CSV fájlból. Ezt a megoldást olvastam több helyen, ill. a PgSQL doksiban sem láttam jobb megoldást.
Más lehetőség lehet még?

-- átmeneti tábla létrehozás
CREATE TEMP TABLE tmp_tbl (id int, val1 text);

-- átmeneti tábla feltöltése csv fájlból
COPY tmp_tbl FROM '/path/to/file.csv' delimiter ';' ; -- (FORMAT csv);

-- tbl tábla frissítése az átmeneti táblából
UPDATE tbl
SET val1 = tmp_tbl.val1
FROM tmp_tbl
WHERE tbl.id = tmp_tbl.id;

-- átmeneti tábla eldobása
DROP TABLE tmp_tbl;

Hozzászólások

Igazad is lehet - mindig az adott helyzet határozza meg az eszközt.
Nyilván a négy sor duzzadni kezd, ha hibakezelés is kell, felügyelet is kell, formátumellenőrzés is kell stb.
Ha pedig hasonló scriptekből kezd kialakulni a nagyvállalati alkalmazásspagetti, akkor előbb-utóbb a scriptek kupacánál megfelelőbb eszköz után néz az ember, elkezd róluk nyilvántartást vezetni, sít.

Üdv,
Marci