![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witajcie !
Tym razem pytanie będzie dotyczyć ładowania danych bezpośrednio do tabel za pomocą konstrukcji load data infile . Rzecz nie byłaby skomplikowana gdyby chodziło o pojedynczą tabelę. Problem polega na tym, jak zaimportować dane z jednego pliku csv jednocześnie do kilku tabel (jednym zapytaniem sql)? Z tego wątku dowiedziałem się, że muszę użyć tyle razy LOAD DATA, do ilu tabel będę wstawiać dane. Z kolei, z tego postu wiem, jakie ustawienia powinna mieć baza danych. Dodam tylko, że tabele będą na silniku innodb, jak też myisam. Czy znacie sposób, aby zrobić takiego szybkiego inserta/update/delete bez konieczności przygotowywania wielu plików csv, dla każdej tabeli z osobna? Czy ma to w ogóle znaczenie czy zrobię to w jednym pliku i jednym zapytaniem czy kilkunastoma plikami i zapytaniami? Wolałbym jednym zapytaniem wstawić wszystkie dane, do ok. 30 tabel; same dane to dość spora pula produktów, import ma lecieć do Magento, jak najszybciej się da. Zapoznałem się wstępnie z Magmi i dziękuję z góry za posty prowadzące do tego rozszerzenia. *) *)chyba, że faktycznie warto i nie ma innego (czyt. wydajniejszego) rozwiązania? edit// literowki Ten post edytował darko 27.09.2012, 01:08:48 -------------------- Nie pomagam na pw, tylko forum.
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 341 Pomógł: 40 Dołączył: 23.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
samym load data tego nie zrobisz.
ale co z tego, odrobina wiecej pracy - i będzie dobrze. importuj dane do tabeli zrodlowej napisz sobie procedure ktora rozprowadzi dane po konkretnych tabelach. caly import, czyli load data, takze bedzie ci wygodnie opakowac procedurą, jako paramert podając ścieżkę do pliku. także cały proces da się uruchomić jednym poleceniem. j. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.06.2025 - 10:00 |