Импорт данных из CSV в MySQL

MySQL: Импорт данных из CSV-1

Бывает, что необходимо быстро, например из консоли, выполнить импорт файла CSV (сохраненного из Excel) в таблицу MySQL.

Как в MySQL можно импортировать данные из CSV файла?

Существует команда LOAD DATA INFILE.

LOAD DATA INFILE '/tmp/artkiev.csv' 
INTO TABLE `log_data`  
FIELDS TERMINATED BY ';'   
ENCLOSED BY '"'  
ESCAPED BY '\\' 
LINES STARTING BY '' 
TERMINATED BY '\n' 
IGNORE 1 LINES; 

Конструкция FIELDS TERMINATED BY ';' ENCLOSED BY '"' ESCAPED BY '\\' говорит о том, что каждое поля в файле будут разделены знаком ; и каждое поле будет обернуто в знак " и если внутри поля попадется аналогичный знак (кавычка), она будет экранирована (ESCAPED BY).

Конструкция LINES STARTING BY '' TERMINATED BY '\n' сообщает о том, что каждая строка начинается с указанного значения в LINES STARTING BY, а заканчивается строка значением в TERMINATED BY.

Конструкция IGNORE num LINES не обязательна и используется только тогда, когда необходимо пропустить при импорте определенные строки в файле. Например ваш файл содержит заглавие столбцов, тогда пишем IGNORE 1 LINES и парсер пропустит первую строку.

Автор: Unknow, Источник
 

Добавить комментарий


Защитный код
Обновить