Tema: Re: Mysql LOAD DATA LOCAL INFILE ir replace
Autorius: LinasB
Data: 2010-02-18 21:50:13
jau 3 serveriuose išbandyta ir veikia be problemų: laukai atskirti TAB'ais 
ir skaičiuose skyriklis taškas.


> Sveiki ,
> Mysql importuoju duomenis is csv, kuriame yra skaičiai (float) su
> kableliais
> vietoje tašku(kaip nori MySQL):
>
> $SQL="LOAD DATA LOCAL INFILE 'csv_imokos.csv' INTO TABLE imokos FIELDS
> TERMINATED BY ';' enclosed by '\"' LINES   TERMINATED BY '\n'
> (mok_id,mok_data, @mok_suma, mok_pastaba, mok_saltinis, mok_kategorija) 
> SET
> mok_suma = replace(@mok_suma, ',', '.') ";
>
> Viskas veikia mano platformoje, o perkėlus į kitą duoda klaidą
> (importavimas
> atliekamas iš po PHP):
>
> Database error: Invalid SQL: LOAD DATA LOCAL INFILE 'csv_imokos.csv' INTO
> TABLE imokos FIELDS TERMINATED BY ';' enclosed by '"' LINES TERMINATED BY 
> '
> ' (mok_id,mok_data,mok_suma,mok_pastaba,mok_saltinis,mok_kategorija) SET
> mok_suma = replace(@var1, ',', '.')
> MySQL Error: 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 'SET mok_suma = replace(@var1, ',', '.')' at line 3)
>
> Ačiū, kol kas google nieko į tą pusę nedavė...
>
> Donatas
>
>
>
>