Может ли кто-нибудь объяснить, как импортировать файл Microsoft Excel в базу данных MySQL?
Например, моя таблица Excel выглядит так:
Country | Amount | Qty
----------------------------------
America | 93 | 0.60
Greece | 9377 | 0.80
Australia | 9375 | 0.80
Ответы:
Экспортируйте его в какой-нибудь текстовый формат. Самым простым, вероятно, будет версия с разделителями табуляции, но CSV также может работать.
Используйте возможность загрузки данных. См. Http://dev.mysql.com/doc/refman/5.1/en/load-data.html
Посмотрите на половину страницы, так как это дает хороший пример данных, разделенных табуляцией:
ПОЛЯ, ЗАКАНЧИВАЕМЫЕ '\ t' ЗАКРЫТО '' ЗАКРЫТО ''
Проверьте свои данные. Иногда при цитировании или экранировании возникают проблемы, и вам нужно настроить исходный код, команду импорта или просто выполнить пост-обработку через SQL.
источник
Для этого есть простой онлайн-инструмент sqlizer.io .
Вы загружаете в него файл XLSX, вводите имя листа и диапазон ячеек, и он генерирует оператор CREATE TABLE и набор операторов INSERT для импорта всех ваших данных в базу данных MySQL.
(Отказ от ответственности: я помогаю запускать SQLizer)
источник
Ниже приведен еще один метод импорта данных электронной таблицы в базу данных MySQL, который не требует дополнительного программного обеспечения. Предположим, вы хотите импортировать свою таблицу Excel в
sales
таблицу базы данных MySQL с именемmydatabase
.Выберите соответствующие ячейки:
Вставьте в Mr. Data Converter и выберите результат как MySQL:
Измените имя таблицы и определения столбцов в соответствии с вашими требованиями в сгенерированном выводе:
CREATE TABLE sales ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, Country VARCHAR(255), Amount INT, Qty FLOAT ); INSERT INTO sales (Country,Amount,Qty) VALUES ('America',93,0.60), ('Greece',9377,0.80), ('Australia',9375,0.80);
Если вы используете MySQL Workbench или уже вошли в систему
mysql
из командной строки, вы можете напрямую выполнять сгенерированные операторы SQL из шага 3. В противном случае вставьте код в текстовый файл (например,import.sql
) и выполните эту команду из оболочки Unix:mysql mydatabase < import.sql
Другие способы импорта из файла SQL можно найти в этом ответе на переполнение стека .
источник
На самом деле существует несколько способов импортировать файл Excel в базу данных MySQL с разной степенью сложности и успеха.
Excel2MySQL . Несомненно, самый простой и быстрый способ импортировать данные Excel в MySQL. Он поддерживает все версии Excel и не требует установки Office.
ЗАГРУЗИТЬ ДАННЫЕ INFILE : этот популярный вариант, пожалуй, самый технический и требует некоторого понимания выполнения команд MySQL. Вы должны вручную создать свою таблицу перед загрузкой и использовать типы полей VARCHAR подходящего размера. Следовательно, типы данных вашего поля не оптимизированы. ЗАГРУЗИТЬ ДАННЫЕ INFILE не может импортировать большие файлы, размер которых превышает «max_allowed_packet». Особое внимание требуется, чтобы избежать проблем с импортом специальных символов и иностранных символов Unicode. Вот недавний пример, который я использовал для импорта CSV-файла с именем test.csv.
phpMyAdmin : сначала выберите свою базу данных, затем выберите вкладку Импорт. phpMyAdmin автоматически создаст вашу таблицу и изменит размер ваших полей VARCHAR, но не оптимизирует типы полей. У phpMyAdmin возникают проблемы с импортом больших файлов, размер которых превышает max_allowed_packet.
MySQL для Excel : это бесплатная надстройка Excel от Oracle. Этот вариант немного утомителен, потому что он использует мастер, а импорт выполняется медленно и содержит ошибки для больших файлов, но это может быть хорошим вариантом для небольших файлов с данными VARCHAR. Поля не оптимизированы.
источник
Не уверен, что у вас есть все эти настройки, но для меня я использую PHP и MYSQL. Поэтому я использую PHP-класс PHPExcel. Это принимает файл практически в любом формате, xls, xlsx, cvs, ..., а затем позволяет вам читать и / или вставлять.
В итоге я загружаю Excel в объект phpexcel, а затем перебираю все строки. Исходя из того, что я хочу, я пишу простую команду вставки SQL, чтобы вставить данные из файла Excel в мою таблицу.
На интерфейсе это небольшая работа, но это всего лишь вопрос настройки некоторых из существующих примеров кода. Но когда вы его набрали, внесение изменений в импорт выполняется просто и быстро.
источник
Лучший и самый простой способ - использовать приложение «MySQL for Excel», бесплатное приложение от Oracle. это приложение добавило плагин для Excel для экспорта и импорта данных в mysql. вы можете скачать это здесь
источник
При использовании текстовых файлов для импорта данных у меня были проблемы с кавычками и тем, как Excel форматировал числа. Например, в моей конфигурации Excel в качестве десятичного разделителя вместо точки использовалась запятая.
Теперь я использую Microsoft Access 2010, чтобы открыть свою таблицу MySql как связанную таблицу. Там я могу просто скопировать и вставить ячейки из Excel в Access.
Для этого сначала установите драйвер MySql ODBC и создайте соединение ODBC . Затем во вкладке «Внешние данные» откройте диалоговое окно «База данных ODBC» и сделайте ссылку на любую таблицу, используя соединение ODBC.
Используя MySql Workbench , вы также можете скопировать и вставить свои данные Excel в таблицу результатов MySql Workbench. Я дал подробные инструкции в этом ответе .
источник
Для пошагового примера импорта Excel 2007 в MySQL с правильной кодировкой (UTF-8) найдите этот комментарий:
"Автор: Майк Лэрд, 13 октября 2010 г., 12:50"
в следующем URL:
http://dev.mysql.com/doc/refman/5.1/en/load-data.html
источник
Вы можете использовать DocChow , очень интуитивно понятный GIU для импорта Excel в MySQL, и он бесплатный на большинстве распространенных платформ (включая Linux).
В особенности, если вас беспокоят типы данных date, datetime, DocChow легко обрабатывает типы данных. Если вы работаете с несколькими таблицами Excel, которые хотите импортировать в одну таблицу MySQL, DocChow выполняет грязную работу.
источник
Шаг 1 Создайте файл CSV
Шаг 2 войдите на свой сервер mysql
Шаг 3 загрузите ваш CSV-файл
load data local infile '//home/my-sys/my-excel.csv' into table my_tables fields terminated by ',' enclosed by '"' (Country, Amount,Qty);
источник
Другой полезный инструмент, заменяющий внешний интерфейс MySQL, - это Toad для MySQL . К сожалению, Quest больше не поддерживается , но является прекрасной IDE для MySQL с мастерами IMPORT и EXPORT, обслуживающими большинство типов файлов.
источник
Самый быстрый и простой способ - сохранить XLS как ODS (открытый лист документов) и импортировать его из PhpMyAdmin.
источник