Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> import danych z excela do mysql - csv
uczeń php
post 20.04.2010, 18:42:45
Post #1





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

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


Witam
Mam problem załadowaniem danych z excela do mysql zacząłem czytać w netcie to trafiłem na takie coś
mysql> LOAD DATA INFILE '/tmp/101.csv' INTO TABLE `arkusz` FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n' (pole_a, pole_b, pole_c, pole_d, pole_e, pole_f, pole_g);. Oczywiście plik zapisany z rozszerzeniem csv. Plik csv znajduje się na wirtualnym serwerze '127.0.0.1'. Chodzi mi tylko o zaimportowanie danych z excela do mysql, gdzie plik csv znajduje się na serwerze. Kombinowałem coś z tym mysql> LOAD DATA INFILE ale nic mi nie wychodzi mówiąc szczerze nie znam aż tak dobrze sql.
Pozdrawiam i Proszę o pomoc.
Go to the top of the page
+Quote Post
P4vl0
post 20.04.2010, 22:07:45
Post #2





Grupa: Zarejestrowani
Postów: 17
Pomógł: 2
Dołączył: 13.04.2010

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


Sprawdź czym są oddzielone "komórki" w pliku csv - otwórz go notatnikiem.
Kod
FIELDS TERMINATED BY ','
Go to the top of the page
+Quote Post
uczeń php
post 21.04.2010, 06:34:27
Post #3





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

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


Nie działa w phpmyadmin przy zapytaniu sql
LOAD DATA INFILE 'http://127.0.0.1/staz/file_bd/produkty.csv' INTO TABLE `products` FIELDS TERMINATED BY ';' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n' (Indeks , Asortyment , Nazwa w j.angielskim , CENA ZAKUP NETTO , Termin przyd.do spożycia , Sposób pakowania , Masa opakowania jednost.(kg) , Masa opakowania zbiorczego(kg) , PKWiU , KOD EAN , typ , profit);
pojawia się taki komunikat
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'w j.angielskim , CENA ZAKUP NETTO , Termin przyd.do spożycia , Sposób pakowani' at line 1

Plik csv wygląda tak
,,,,,,,,,,,,
,"Indeks","Asortyment","Nazwa w j. angielskim","CENA ZAKUP NETTO","Termin przyd. do spożycia","Sposób pakowania"," Masa opakowania jednost.(kg) "," Masa opakowania zbiorczego (kg) ","PKWiU ","KOD EAN","typ","profit"
1,71513440,"Baleron gotowany- porcje","BAKED GAMMON- PORTIONS",30,"VAC","0,5",,"15.13.12-53.00",250049,2,30

,,,,,,,,,,, - czy puste rekordy mogą przeszkadzać ?
Go to the top of the page
+Quote Post
Pilsener
post 21.04.2010, 08:21:01
Post #4





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Excel robi syf w plikach csv, zwróć uwagę na takie rzeczy jak:
- liczba kolumn (musi być stała dla każdego wiersza)
- kodowanie znaków
- znak nowej linii
- kwalifikator tekstu
- znaki specjalne

Ja zawsze musiałem najpierw obrobić plik w php.
Go to the top of the page
+Quote Post
uczeń php
post 21.04.2010, 16:29:54
Post #5





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

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


Znalazłem odpowiedź
LOAD DATA LOCAL INFILE 'http://127.0.0.1/staz/file_bd/produkty.csv' INTO TABLE `products` FIELDS TERMINATED BY ',' ENCLOSED BY '"';
U mnie działa exclamation.gif!
Dane z csv ładowane są do mysql i o to mi chodziło exclamation.gif!
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 23.06.2025 - 21:03