![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 3.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich serdecznie i na początek Wesołych Świąt:)
Mam pytanie. Potrzebuje wlać do bazy danych dane z pliku tekstowego. Problem w tym, że dane w pliku tekstowym mają taką postać: Kod 1;1;1;"OWNER" 2;2;2;"OWNER" 3;3;2;"DISPONENT" itd. Tabela do której mam to wlać wygląda następująco:
Problem jest następujący: potrzebuje tak spreparować dane aby wartość w cudzysłowach wlała sie do tabeli bez tych cydzysłowów. Zastanawiam się teraz czy najpierw muszę tak wyedytować plik aby nie było tych cudzysłowów czy może da się to zrobić jakąś kombinacją w poleceniu LOAD DATA INFILE. Plik z danymi jest ogromny więc ręczna edycja odpada. Myślę nad jakimś skryptem co to pozmienia ale najlepsze było by polecenie Mysql'a. Za pomysły z góry dziękuję:) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 3.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
Właśnie podejrzewam,że problem leży właśnie w definicji tabeli. Podczas wpuszczania pliku txt do bazy niektóre kolumny tabeli były nie wypełniane i to chyba spowodowało ostrzeżenia. Plik był duży ponad milion wierszy. Sam zapis poszedł szybko tzn ok. 20s ale później przeprowadziłem konwersję z MyISAM do InnoDB i to trwało ponad godzinę. Zastanawiam się czy jesli przed zapisem danych od razu tablice ustawię na type=Innodb zaoszczedzę czas tworzenia bazy czy może spowoduje to wydłużenie czasu wlewania danych. Próbował ktoś może takiej sztuczki??(IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 12:44 |