Open Mintaka opened 3 years ago
pull request #29
Našla jsem pár řešení a jedno z nich se jeví nejslibněji:
Testoval jsem generovaní dotazu tak že se nejdřív přidá hlavička INSERT INTO table VALUES a pak se přidá řetězec ve kterém jsou poskládané sady hodnot: (null, val1, val2, val3), (null, val4, val5, val6), (null, val7, val8, val9) ... a tím se vloží hodně záznamů najednou.
Chtělo by to ještě vyzkoušet, které z těch řešení je nejefektivnější. Pandas je v našem případě zatím asi kanón na vrabce, ale určitě na něj dojde v samostané/ých lekcích.
Ahoj,
Filipe, já jsem to zkusila předělat na ten způsob, jak popisuješ a funguje to, viz můj pull request. Ale dělala jsem to před refaktoringem kódu, tak to ještě bude potřeba upravit, kdyžtak se na to večer kouknu. Pandas je možná teda kanón na vrabce, ale nejefektivnější mi přijde. :) Ale je fakt, že je asi blbost to teď dělat přes pandas, když hodně lidí z kurzu neví,jak funguje, spíš pak možná až proberem pandas, tak ukázat, že to jde přes něj taky.
Refaktoring by měl být jednoduchý.
Ve funkci insert_csv2db jsou všechna potřebná data k dispozic. Samotnou část, kdy se z csv vytahují jednotlivé řádky a skládají se do řetězce by možná bylo dobré dát do samostatné funkce, která by vracela už jeden kompletní řetězec s daty.
To řešení s Pandas s jeho velmi stručným představením by mohlo být na kurzu představeno.
OK, díky, tak já na to večer mrknu.
Jasan, uvidíš, jak budeš mít prostor a chuť.
Now we store measurement data one row by one.
Does have SQLite ability to store multiple values in one SQL query? If so, made a code which can do bulk inserts. Also compare duration of separated insert vs bulk inserts.