Команды SQL для загрузки CSV файла в таблицу.
Сначала нужно создать таблицу, указать в ней все поля и дать им верные типы:
DROP TABLE IF EXISTS orders; CREATE TABLE orders ( id_o INT, user_id INT, price DOUBLE, o_date DATE );
Файл CSV будем загружать из директории "/var/lib/mysql-files/", потому что mysql сервер запущен в безопасном режиме, который не позволяет загружать файлы откуда угодно.
Во время загрузки файла преобразуем поле с десятичной запятой в точку и сделаем распознание даты:
LOAD DATA INFILE '/var/lib/mysql-files/orders.csv' INTO TABLE orders FIELDS TERMINATED BY ';' -- разделитель полей ENCLOSED BY '"' -- обрамление полей LINES TERMINATED BY '\n' -- конец строки IGNORE 1 ROWS -- первую строку пропускаем, в ней заголовки (@id_o, @user_id, @price, @o_date) SET id_o = @id_o, user_id = @user_id, price = REPLACE(@price, ',', '.'), o_date = STR_TO_DATE(@o_date,'%d.%m.%Y');