Fórumok
Ü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
MS SQL SSIS
http://blog.sqlauthority.com/2011/05/12/sql-server-import-csv-file-into…
http://dataqueen.unlimitedviz.com/2012/07/ssis-connect-to-postgresql/
Üdv,
Marci
Ha jól értem az első linket, akkor egy import eszköz. Feltételezem, hogy a már meglevő sorokat/rekordokat nem fogja felülírni.
Nekem meg pont ez kellene. Egy id/unique mező szerint update-elje.
Valami ilyesmi? https://social.msdn.microsoft.com/Forums/en-US/5e74ee36-d274-4676-ba04-…
Üdv,
Marci
Azt hiszem ilyesmi.
De a 4soros script egyszerűbb nekem. :) De köszönöm!
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