2014-06-23 3 views
-2

Я загружаю огромный файл csv в базу данных mysql, используя команду LOAD DATA local INFILE.Ошибка MySql с использованием ОПЦИОНАЛЬНО ЗАКЛЮЧЕНА

таблица имеет одного поля (HIDS) только что целое, первичное и autoincrement.The запрос

$insert_query = "LOAD DATA local INFILE '".$target_path."' INTO table master_huts(hids) OPTIONALLY ENCLOSED BY '\"' IGNORE 1 LINES "; 

Файл CSV содержит

ID 
"343" 
"454" 
"777" 

Если удалить двойные кавычки из файла csv он работает нормально. Как я могу сказать MySql игнорировать двойные кавычки из файла csv.

+0

У вас отсутствует ключевое слово 'FIELDS', как в' FIELDS OPTIONALLY ENCLOSED ... '. Неясно, из синтаксиса, что вы можете опустить его, если вы используете одно из связанных предложений. –

+0

Вы задали вопрос 7 часов назад ... и ответ, который я дал 7 часов тому назад, должен был включить ** 'FIELDS OPTIONALLY ENCLOSED BY' ** перед' IGNORE'. И вы опустили ключевое слово ** 'FIELDS' **, которое было включено в моем ответе. [http://dev.mysql.com/doc/refman/5.1/en/load-data.html](http://dev.mysql.com/d oc/refman/5.1/en/load-data.html) – spencer7593

+0

Возможный дубликат [Ошибка анализа для данных загрузки данных в mysql & php] (http://stackoverflow.com/questions/24373129/parse-error-for-load -data-infile-in-mysql-php) –

ответ

0

Попробуйте это:

$ insert_query = "LOAD DATA LOCAL INFILE«" $ target_path.." 'В таблицу master_huts (HIDS) ПОЛЯ ENCLOSED BY'»» LINES TERMINATED BY '\ п' IGNORE 1 LINES;