Load data local infile

intimoviro

Utente Attivo
18 Ago 2009
272
0
0
Salve ragazzi, ho un file csv che voglio inserire suld atabase, il file è strutturato in questo modo:
ogni campo è separato da tab, e ogni prodotto è su una riga, ed è presente una riga d'intestazione dei campi.

Ho fatto in questo modo, funziona però non inserisce tutti i record, visto che il file è grande più o meno 4000 righe, anche se è strano perchè dovrebbe inserirle tutte?

PHP:
mysql_query("LOAD DATA LOCAL INFILE 'product.csv' INTO TABLE tabella 
FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\\n' IGNORE 1 LINES;")
 or die('Error loading data file.<br>' . mysql_error());

Grazie
 
può essere che vada in timeout php, il web server o il database server perché l'istruzione e troppo lunga, sarebbe meglio spezzare il cilclo ogni tot e rieseguirlo
 
Praticamente dovresti creare una sessione in cui salvi ogni volta il numero di esecuzioni del ciclo. Ogni (ad esempio) 30 esecuzioni interrompi il ciclo e reindirizzi l'utente allo script stesso. Lo script poi riprende il ciclo da dove è stato interrotto, leggendo il valore della sessione.
 

Discussioni simili