Импорт большого файла xls в базу данных mysql


Я хочу импортировать большой xlsx (файл электронной таблицы) в базу данных mysql. Я делал это раньше с помощью phpmyadmin, но этот файл слишком большой (205000 строк).

Поэтому, когда я хочу сделать это с помощью phpmyadmin, это заняло много времени и не было сделано.

Какой лучший и быстрый способ импортировать его в базу данных mysql?

Author: Herland Cid, 2012-04-23

3 answers

Вы можете сделать это с помощью команды LOAD DATA в MySQL: http://blog.tjitjing.com/index.php/2008/02/import-excel-data-into-mysql-in-5-easy.html

Save your Excel data as a csv file (In Excel 2007 using Save As)
Check the saved file using a text editor such as Notepad to see what it actually looks like, i.e. what delimiter was used etc.
Start the MySQL Command Prompt (I usually do this from the MySQL Query Browser – Tools – MySQL Command Line Client to avoid having to enter username and password etc.)
Enter this command:
LOAD DATA LOCAL INFILE ‘C:\\temp\\yourfile.csv’ INTO TABLE database.table FIELDS TERMINATED BY ‘;’ ENCLOSED BY ‘”‘ LINES TERMINATED BY ‘\r\n’ (field1, field2);
[Edit: Make sure to check your single quotes (') and double quotes (") if you copy and paste this code]
Done!
 6
Author: Alan Delimon, 2012-04-23 17:36:33

Вы можете попробовать использовать Navicat MySQL. Я сделал это с помощью файла xlsx объемом 250 МБ+, и Navicat справился с этим безупречно, не вспотев.

Просто убедитесь, что ваш MySQL настроен на получение большого объема данных, изменив параметр max_allowed_packet в вашем my.ini на больший объем, скажем, 128 млн.

 0
Author: Furunomoe, 2012-04-23 17:05:58

Жаба для MySQL (бесплатная) была бы еще одной альтернативой.

 0
Author: DocJones, 2012-04-23 19:27:25