MySQL for Excel упрощает задачи вставки, удаления и обновления строк таблицы базы данных, используя Microsoft Excel, обеспечивая снимок отобранной таблицы MySQL, который импортируется в рабочий лист Excel. Особенность сеанса редактирования работает с отдельной копией данных. Любые изменения, внесенные в ту копию, переведены на SQL-операторы, которые применяются к отобранной таблице MySQL.
MySQL for Excel позволяет вам загрузить и отредактировать данные MySQL непосредственно из рабочего листа Microsoft Excel. Изменения немедленно передаются, если опция Auto-Commit включена во всплывающем меню, иначе можно использовать или в том же самом всплывающем меню, чтобы отменить или передать изменения данных в MySQL.
Отредактировать данные MySQL из рабочего листа Excel
Запустите Excel, выберите вкладку меню
и нажмите , чтобы открыть панель задач MySQL for Excel.В ней из области Open a MySQL Connection дважды щелкните по существующей связи, чтобы показать доступные схемы базы данных.
Выберите схему из списка и нажмите
, чтобы показать все объекты базы данных в схеме.Выберите таблицу с данными, чтобы отредактировать и затем нажмите Edit MySQL Data. Окно предварительного просмотра показывает отобранные данные и предоставляет возможность определять количество строк к предварительному просмотру.
Нажмите рис. 4.1 для примера меню режима редактирования (всплывающее окно).
, чтобы переместить данные предварительного просмотра в текущий рабочий лист и включить режим редактирования. ПосмотритеВ режиме редактирования отредактируйте данные в своем рабочем листе и нажмите
, чтобы добавить изменения вручную или выберите , чтобы передать изменения по мере правок. Нажмите , чтобы освежить данные из базы данных или отменить правки.Дополнительные действия режима редактирования:
Чтобы остановить режим редактирования, щелкните правой кнопкой мыши по всплывающему меню и выберите
.Чтобы возобновить режим редактирования, щелкните по ячейке с данными.
Чтобы переместить всплывающее меню, удержите правильную кнопку мыши и тяните меню.
Следующие данные показывают пример таблицы
category
в примере схемы
sakila
в режиме редактирования.
Цвет фона представляет статус каждой ячейки. Есть четыре разных цвета,
которые используются, редактируя данные о таблице и два цвета-помощника.
Рис. 4.1. Редактирование данных в MySQL for Excel
В предыдущем примере:
Зеленая ячейка Drama была изменена и затем передана.
Синяя ячейка Gaming была изменена, но не передана.
Auto-Commit включен прежде, чем изменить значение 9 на 10 в строке 10 столбца category_id, это произвело ошибку, потому что это добавило бы двойное значение как первичный ключ.
Таблица 4.1. Цвета ячеек в режиме редактирования
Цвет | Смысл |
---|---|
Белый | Цвет по умолчанию для всех ячеек. Это оригинальные данные или данные после того, как нажато | .
Зеленый | Ячейки, которые были успешно переданы. |
Синий | Ячейки, которые были изменены, но еще не были переданы. |
Красный | Ячейки, которые произвели ошибку при передаче. Диалог ошибки также показан, в то время как передача выполняется. |
Оранжевый | Ячейки, которым делали попытку передачи, но она провалилась из-за обнаруженных изменений из внешних источников. Например, иной пользователь внес изменение в поле после того, как это было импортировано в Excel. Это особенность Optimistic Updates . |
Желтый | Ячейки, которые принимают новые данные. Данные, введенные здесь, вставляются в таблицу MySQL. |
Дизайн MySQL for Excel не блокирует таблицу, когда вы открываете сеанс редактирования, и данные импортируются. Вместо этого особенность сеанса редактирования полагается на модель, в которой у вас есть своя собственная копия данных (снимок), чтобы изменить. Модель также подразумевает, что у ваших коллег также есть своя собственная копия данных. Когда многократные сеансы редактирования выполняют операции на той же самой таблице в то же время, возможно переписать изменения, внесенные другой сессией.
Чтобы предотвратить непреднамеренную перезапись, когда многократные сеансы редактирования используются, убедитесь, что включена опция Use optimistic updates on all Edit Data sessions (см. вкладку Edit Sessions). Эта опция включена по умолчанию и не должна быть отключена, когда база данных MySQL находится на удаленном хосте, который не гарантирует эксклюзивного доступа к данным.
Оптимистические обновления гарантируют, что
WHERE
в
UPDATE
ссылается на все столбцы таблицы.
Если какое-либо значение записи было изменено другой сессией, в то время как
вы также вносите изменения, запись не найдена и этот запрос
UPDATE
ничего не сделает, когда вы
передадите изменения базы данных. Напротив, с отключенными оптимистическими
обновлениями WHERE
в
UPDATE
ссылается на столбцы
первичного ключа таблицы.
Чтобы рассмотреть запросы, произведенные MySQL for Excel, выберите опцию Preview SQL statements before they are sent to the server прежде, чем начать ваш сеанс редактирования (см. вкладку SQL Queries ).
С включенными оптимистическими обновлениями непротиворечивые изменения проходят в базу данных, но противоречивые изменения не передаются. Чтобы исправить конфликты, сделайте следующее:
В вашем рабочем листе в режиме редактирования определите местонахождение оранжевых клеток, которые показывают противоречивые данные.
Загрузите новую копию данных из базы данных при нажатии
в диалоге сеанса редактирования, затем .Примените изменения противоречивых ячеек снова и затем передайте изменения.
Для получения общей информации о работе с сеансами редактирования, см. раздел 4.1.