Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Лишние кавычки в данных при импорте в базу из csv-файла
Форумы портала PHP.SU » » Работа с СУБД » Лишние кавычки в данных при импорте в базу из csv-файла

Страниц (1): [1]
 

1. Deonis - 27 Сентября, 2011 - 10:55:42 - перейти к сообщению
Здравствуйте! Есть проблемка...
При импорте данных из файла в MySQL, добавляются двойные кавычки к уже существующим
К примеру:
файл data.csv
1;Masha
2;Pasha
3;"Putin"

Запрос:
PHP:
скопировать код в буфер обмена
  1. $query = "LOAD DATA LOCAL INFILE 'data.csv' REPLACE INTO TABLE `tbl_name` FIELDS TERMINATED BY ';' LINES TERMINATED BY '\r\n'";


В базе получаем
1 Masha
2 Pasha
3 """Putin""" - не есть хорошо

Как можно избавиться от лишних автоматически добавляемых кавычек к уже существующим в данных?
2. EuGen - 27 Сентября, 2011 - 11:32:46 - перейти к сообщению
ENCLOSED BY '"'
3. Deonis - 27 Сентября, 2011 - 12:47:17 - перейти к сообщению
EuGen пишет:
ENCLOSED BY '"'

Я пробовал, но в ответ ничего не происходит, даже ошибку не выдаёт
запрос изначально делал так:
PHP:
скопировать код в буфер обмена
  1. $query = "LOAD DATA LOCAL INFILE 'data.csv' INTO TABLE `tbl` FIELDS TERMINATED BY ';' ENCLOSED BY '\"' ESCAPED BY '\\' LINES TERMINATED BY '\r\n'";

Может быть синтаксис не правильный? Могу предположить, что из-за экранирования (ENCLOSED BY '\"'), но без него уже точно ругаться будет.

 

Powered by ExBB FM 1.0 RC1