Tema: Mysql LOAD DATA LOCAL INFILE ir replace
Autorius: Donatas
Data: 2010-02-18 15:03:21
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