PDA

View Full Version : [PHP & MYSQL] Carico nel database non + di 4000 record alla volta... xchè?


Landre
28-12-2004, 08:58
ciao ragazzi!
mi è successa questa cosa strana.
Sviluppando un'applicazione in php, nella quale, in brevissimo, devo uploadare delle anagrafiche in formato di testo con separatore ; , succede che se carico fino a circa 4000 righe tutto ok, oltre mi da un errore non ben definito e non carica il txt.
NB non è un problema di DataBase, perchè posso caricare quante anagrafiche voglio.... ma non in una volta sola! Diciamo che massimo Uppo 4000 righe alla volta, e siccome queste anagrafiche saranno molte migliaia, volevo evitare di dover fare questa procedura più volte...

So di essere stato molto vago, spero abbiate focalizzato il problema... magari c'è qualche valore da settare in php.ini , qualche dimensione di cache.... non so.. help!

grazie

Misterius
29-12-2004, 12:41
Ciao, io ho avuto lo stesso problema per caricare 10 milioni di record per un concorso. Dopo circa 50/60 mila si fermava.
Il problema che mi tirava fuori era di time out, nel senso che per evitare di bloccare il server con interrogazioni troppo lunghe, se dopo 30 secondi (valore di default) si ferma tutto.
Non mi ricordo in quale file sono andato a cambiare l'impostazione. Se cerchi nella documentazione di MySql dovresti trovare qualcosa.
Facci poi sapere anche qui nel forum.
Spero di averti dato qualche spunto per raggiungere la soluzione.
Ciao.

Landre
29-12-2004, 17:20
Sospetto infatti fosse qualcosa del genere , perchè come errore da qualcosa tipo "connessione interrotta" - tipico di time out. Il fatto strano però è che a caricare 4000 righe ci mette 2 secondi, non di più..... dunque non sarà proprio magari un limite di dimensione di file da uppare???? (6000/7000 righe sono un txt da 450kb )

...boh.... vedremo un po'...

...si accettano consigli! ;)

beppegrillo
29-12-2004, 18:42
Certo php ha un limite di upload, mi pare sia di 6/8 MB standard.
Vai in php.ini ed edita il valore max_upload_size.

cionci
30-12-2004, 19:23
Ma fai tutto con una insert sola ?

Landre
31-12-2004, 00:36
si, praticamente carico un file txt con tabulazione ;

avrà si e no 8/10 campi.

...e non riesco a caricare un ifle con più di 4000 righe...

..si sta parlando si un file da 400kb ...
...non saprei!

Help! :rolleyes:

cionci
31-12-2004, 10:44
Non ho ancora capito come carichi il file... Mi fai un esempio dell'istruzione che dai a MySQL ?