dajmy na to ze chce w tym skrypcie zrobic update danych z plikow do bazy mysql
oto pół schematyczny skrypt
<?php
$row = 1;
$uchwyt = fopen ("test.csv","r");
while (($data = fgetcsv($uchwyt,",")) !== FALSE) {
$row++;
TUTAJ BEDZIE ZAPYTANIE Z WYWOLANIEM GO (ignorujcie bledy): UPDATE tabela SET kolumna1 = $data[0], kolumna2 = $data[1] WHERE kolumna_klucz = $data[0]
}
}
fclose ($uchwyt);
?>
teraz pytanie: ile takich updatow skrypt wytrzyma bez zwiechy? dane nie sa specjalnie duze, w linii moze jest z 50 znaków gora
czy wykona wiecej czy mniej niz 10.000 odczytow i zapytan?
wiem ze to pytanie trudne bo sporo zalezy od serwera (skrypt jest lekki), ale prosze tez o orientacyjna odpowiedź
====================
a jezeli sie zawiesi do 10.000 rekordow to mam i na to pewien algorytm:
bede updateowal baze co 500 linijek pliku a skrypt sie odswiezy i wezmie kolejna paczke z 500 linijek. Pierwsza 500 pojdzie lekko ale prosze mi powiedziec czy cos takiego ma szanse bytu:
<?php
$row = 1;
$uchwyt = fopen ("test.csv","r");
while (($data = fgetcsv($uchwyt,",")) !== FALSE) {
$row++;
TUTAJ BEDZIE ZAPYTANIE Z WYWOLANIEM GO (ignorujcie bledy): UPDATE tabela SET kolumna1 = $data[0], kolumna2 = $data[1] WHERE kolumna_klucz = $data[0]
if (($row % 500) == 0) header(wywolanie skryptu z $_GET rownym linii na ktorym skrypt sie zatrzymal)<font size="4">*</font>
}
}
fclose ($uchwyt);
?>
- tylko jak wrocic do linii k*500 ??