Sziasztok!
Szeretnék egy SQLite adatbázisba több sort egy INSERT paranccsal beszúrni (Qt-s programból).
MySQL-ben (és gyanítom, hogy az SQL92 szabványban is) így néz ki a dolog:
INSERT INTO tablename (col1, col2) VALUES ('v1', 'v2'), ('v3', 'v4'), ('v5', 'v6')…
Ez SQLite-ban nem működik, nem szereti a vesszőt az első bezáró zárójel után.
Tudjátok, hogyan lehet ezt megtenni?
- 2068 megtekintés
Hozzászólások
insert into tablename (col1, col2) select 'v1','v2' union select 'v3','v4' ....
- A hozzászóláshoz be kell jelentkezni
Úgy néz ki, hogy ez működik, ez bizonyos fokig:
"Too many terms in compound SELECT"
Túl sok neki az egyszerre beadott adat, ahogy nézem.
--
- Name ONE thing that your Linux computer can do that my MAC can't!
- Right click.
- A hozzászóláshoz be kell jelentkezni
Hány sort akarsz beszúrni? És miért kell hozzá egy insert?
- A hozzászóláshoz be kell jelentkezni
Ez engem is erdekelne.
- A hozzászóláshoz be kell jelentkezni
Webről leszedett tartalmat szeretnék adatbázisba illeszteni, hogy utána lehessen vele helyben dolgozni (ez így gyorsabb mintha minden lekérés a webről történne).
A beillesztendő sorok száma olyan 10.500 körül van :)
Első megoldásom a for ciklusos több insert volt, de kb. 13-14 percet szórakozott azzal, hogy beillessze ezt.
--
- Name ONE thing that your Linux computer can do that my MAC can't!
- Right click.
- A hozzászóláshoz be kell jelentkezni
Erre szerintem az sqlite .import parancsa a megoldás.
- A hozzászóláshoz be kell jelentkezni
Szerintem meg erre nem az sqlite valo, hanem egy picit komolyabb db szerver. Nem?
- A hozzászóláshoz be kell jelentkezni
Az import parancsot megnézem, köszönöm a tippet.
Komolyabb szervert én is szeretnék, csak sajnos nem tudom azt mondani, hogy itt egy (kívül) végletekig egyszerűsített program, de mellé rakj fel hozzá még egy MySQL szervert is.
--
- Name ONE thing that your Linux computer can do that my MAC can't!
- Right click.
- A hozzászóláshoz be kell jelentkezni
Attól függ, mit csinálnak vele. A tízezer rekord önmagában nem probléma.
- A hozzászóláshoz be kell jelentkezni