Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> insert dużej ilości danych
olo707
post
Post #1





Grupa: Zarejestrowani
Postów: 77
Pomógł: 0
Dołączył: 30.03.2012

Ostrzeżenie: (0%)
-----


Witam

Mam takie zadanie do zrobienia. Z plików CSV muszę pobrać odpowiednie dane (nie chodzi mi o import całej zawartości pliku do bazy danych używając phpmyadmina (to akurat wiem jak zrobić)) i dodać je do bazy danych z poziomu kodu. Pobieram dane wykorzystując funkcje php-a operujące na ciągach tekstowych i dodaje wartości do tablicy. Następnie wartości z tablicy zapisuje do bazy danych (używam PDO). Przykładowa jedna wartość takich danych wygląda tak : 5090,40.45,2015-06-06. Wszystko działa idealnie ale do momentu jeśli takich wartości jest do ok 1500. Jeśli tych wartości jest np 16000 to już nie jest w stanie zapisać tych danych do bazy danych. Pojawia się napis Fatal error: Maximum execution time of 60 seconds exceeded in ...
Czy da się to w ogóle w ten sposób zrobić ? A jeśli nie to będę wdzięczny za jakąś wskazówkę jak to wykonać.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




@olo707:
Nie, nie ma w tym nic złego. W zasadzie w ten sposób przyspieszasz cały proces. Jednak wszystko zależy od tego jaki plik CSV importujesz. Przykładowo: w tabeli, do której wstawiasz dane, są jakieś klucze obce które wgrywasz z pliku to wypadałoby sprawdzić integralność danych. Dalej: przekształcenia danych. U nas w CSV liczby wgrywane są w różnych formatach np. 1234.56 lub 1 234,56. Jeśli wrzucisz tą drugą wartość to pola numerycznego to otrzymasz głupoty. Robimy to tak, że domyślnie każda wartość ląduje w polu tekstowym, następnie dane są modyfikowane (np. spacja zamieniana na nic, przecinek na kropkę) i zmieniamy typ pola na numeryczny. Dopiero tak przygotowana wartość leci do tabeli właściwej.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 20:28