Több időt vesz igénybe, ha egy adatbázisban egyenként UPDATE-elem a sorokat ahelyett, hogy egyszerre UPDATE-elném?
Az egyenként az úgy néz ki, hogy első query: ... WHERE id=1; második query: ... WHERE id=2, stb.
Az egyszerre pedig egy olyan feltétel megadásával történne, ami a frissítendő rekordokban közös, pl. WHERE category=2
Több időt vesz igénybe az első megoldás? Ha igen, mennyivel?
Jóval gyorsabb 1 lekérdezéssel, mert egyrészt akkor nem kell parsolgatni a queryket állandóan, másrészt általában az adatbázis szerver nem ugyanazon a gépen van, mint az alkalmazás szerver (már ha webalkalmazásról van szó), és így minden lekérdezés futtatásakor meg kell várni a roudtripet, ami jóval több, mint maga az update lefutási ideje (gondolom nem párhuzamosan futtatod, abban az esetben pedig a connection-ök számával lesz gond). Arról nem is beszélve, hogyha a werere feltételben olyat adsz meg, amire nincs index létrehozva, akkor anyniszor végig kell menni az egész táblán szegény adatbázisszervernek.
De extrém esetben lehet hogy gyorsabb a több query:
pl: nagyon sok sor van a táblában, és az id-re van index, de a category-ra nincs, és csak 2-3 sort kell updatelni.
Köszönöm a kielégítő választ :)
Egy gépen van a kliens és az adatbázis, nem webes alkalmazás lesz.
Egyébként már megoldottam a gondom, mert máshogyan oldottam meg a feladatot, de azért jó tudni, amiket leírtál.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!