Данные из рабочего листа Microsoft Excel могут быть экспортированы в новую таблицу базы данных MySQL в рамках существующей схемы. Для получения инструкций относительно того, как добавить новую схему, см. раздел 3.2.
Операция экспорта данных игнорирует колонки, содержащие двоичные данные (Varbinary или Blob). См. Известное ограничение для двоичных данных.
Чтобы экспортировать данные о рабочем листе Excel в таблицу MySQL:
Запустите Excel, выберите вкладку меню
и затем нажмите , чтобы открыть панель задач MySQL for Excel.В этой панели в области Open a MySQL Connection дважды щелкните по существующей связи, чтобы показать доступные схемы базы данных.
Выберите схему из списка и нажмите
, чтобы показать все объекты базы данных в схеме.Выберите ячейки в рабочем листе Excel, чтобы экспортировать и затем нажмите Export Excel Data to New Table. Окно предварительного просмотра показывает отобранные данные и обеспечивает Column Options и Advanced Options, которые будут использоваться во время экспорта.
В диалоге Export Data to MySQL сделайте следующее:
Определите, должна ли первая строка в предварительном просмотре использоваться в качестве имени столбца. Это включено по умолчанию.
Опция First Row Contains Column Names управляет типом данных для столбцов, приводя тип к подходящему для строк 2-n (включена) или для строк 1-n (выключена).
Введите уникальное имя таблицы и выберите сопоставление, чтобы использовать для новой таблицы.
Выберите или создайте столбец первичного ключа для новой таблицы.
Выберите каждый столбец и примените нужные опции.
Нажмите
, чтобы составить новую таблицу с данными.Рис. 7.1. Экспорт данных Excel в MySQL
Область Column Options расположена ниже сетки предварительного просмотра. Когда вы щелкаете по каждому заголовку столбца сетки предварительного просмотра, вы видите опции для выбранного столбца. Некоторые значения установлены по умолчанию: Column Name, Data Type и им подобные. Если опция столбца не относится к выбранному столбцу, или если опция не может быть изменена, выбор затемнен.
Примените
, чтобы изменить поведение по умолчанию опций, которые относятся ко всем колонкам, предназначенным на экспорт в таблицу MySQL.MySQL for Excel анализирует и обнаруживает тип данных каждой колонки по умолчанию, однако, можно отвергнуть обнаруженное значение, выбрав иной тип данных из выпадающего списка. Чтобы перезагрузить колонку назад к обнаруженному типу, щелкните правой кнопкой мыши в области Data Type и выберите Reset to auto-detect.
Рис. 7.2. Сброс типа данных
Расширенные настройки позволяют вам управлять способом, которым MySQL для Excel экспортирует данные из рабочих листов. Используйте
, чтобы восстановить оригинальные опции.Ряд расширенных настроек затрагивает текущую операцию экспорта данных, как описано ниже.
Рис. 7.3. Опции столбца
Use the first 100
(default) Excel data rows to preview and calculate data types:
Это определяет количество строк для предварительного просмотра и значения,
которые затрагивают автоматическое отображение.
Analyze and try to detect correct data type based
on column field contents: Попытки проанализировать данные и определить
тип данных для колонки. Тип столбца определяется как
VARCHAR
, если это содержит много типов.
Add additional buffer to Varchar length (round
up to 12, 25, 45, 125, 255): Когда тип данных автоматически обнаружен
и установлен в VARCHAR
, тогда это вычисляет
максимальную длину для всех строк в рамках колонки и округляет максимальную
длину к одной из определенных длин выше.
Если выключено, длина Varchar
установлена в длину самой большой записи в рабочем листе Excel.
Automatically check the Index checkbox for Integer columns: Если выключено (по умолчанию), у колонок с целочисленным типом данных будет по умолчанию опция Create Index.
Automatically check the Allow Empty checkbox for columns without an index: Если включено (по умолчанию), колонки без выбранной опции Create Index автоматически включают опцию Allow Empty.
Show all available MySQL data types in the Data Type drop-down list: По умолчанию только обычно используемые типы данных показаны. Выберите (выключена по умолчанию) опцию, чтобы увидеть список всех типов данных MySQL.
Этот выбор был добавлен в MySQL for Excel 1.3.0.
Рис. 7.4. Опции полей данных
Опции полей данных:
Use formatted values:
Когда включена (по умолчанию), данные из Excel рассматривают как
Text
, Double
или
Date
. Когда выключена, данные никогда не
рассматривают как Date
, например, это означает,
что дата была бы представлена как число.
Рис. 7.5. Опции запросов SQL
Опции запросов SQL:
Generate an INSERT statement for each data
row: Когда выбрана, запрос
INSERT
для каждой экспортируемой строки
данных произведен в получающемся SQL-запросе, посланном в сервер MySQL.
Иначе будет произведен только один
INSERT
как оптовая операция по данным, который работает лучше, чем многократные
multiple INSERT
.
Выключена по умолчанию.
Create table's indexes after data has been exported to speed-up rows insertion: Это экономит диск I/O для оптовых вставок (тысячи строк), потому что переиндексация произойдет не каждый раз, когда строка вставляется, а только однажды в конце вставки данных. Это включено по умолчанию.
Этот выбор был добавлен в MySQL for Excel 1.2.1.
Следующая опция была удалена
в
MySQL for Excel 1.2.1. Теперь поведение по умолчанию должно всегда удалять
пустые столбцы из вычислений.
Remove columns that contain no data, otherwise flag them as "Excluded": Если выбрано, колонки без данных в Excel удалены и не показаны в окне предварительного просмотра. Если отключена (по умолчанию), эти колонки будут существовать, но иметь включенную опцию Exclude Column .
Запись "0" в столбец даты.
Запись "0" в столбец даты Excel преобразует значение в "12/30/1899" в MySQL. Это вызвано тем, что Excel сначала переводит значение к минимальной дате в Excel, а это "1/0/1900", потому что даты внутренне сохранены в Excel как числа (дни, которые прошли с "1/0/1900"). Однако, потому как "1/0/1900" не действительная дата, переданное MySQL значение изменится на "12/30/1899", так как .NET MySQL connector автоматически преобразует "1/0/1900" в "12/30/1899", что является самой близкой действительной датой.