Синхронизировать модель в MySQL Workbench - PullRequest
6 голосов
/ 15 апреля 2010

После прочтения документации для MySQL Workbench у меня сложилось впечатление, что можно изменить базу данных на сервере (например, добавить новый столбец) и позже включить изменения DDL в диаграмму EER. По крайней мере, у него есть опция Синхронизировать модель в меню База данных . Я нашел это хорошей возможностью, потому что я мог использовать инструмент графического моделирования, не становясь его заключенным.

На практике, когда я запускаю такой инструмент, мне предлагаются следующие опции:

Model             Update  Source
================  ======  ======
my_database_name  -->     ! N/A
   my_table_name  -->     ! N/A
N/A               -->     ! my_database_name
   N/A            -->     ! my_table_name

Я не могу этого понять, но оставив все как есть:

DROP SCHEMA my_database_name
CREATE SCHEMA my_database_name
CREATE TABLE my_table_name

Это дамп модели, который перезаписывает все удаленные изменения в my_table_name.

Я неправильно понимаю функцию?

Ответы [ 3 ]

6 голосов
/ 28 июня 2011

Вот реальная ошибка, за которой вы можете следить.http://bugs.mysql.com/bug.php?id=61211 И есть обходной путь от одного из специалистов по QQ mysql:

Обходной путь - открыть оболочку сценариев, проверить имя схемы и убедиться, что поле oldName содержит то же самоеНазовите как то, что вы пытаетесь синхронизировать.Команды для этого:

# print current oldName value
print grt.root.wb.doc.physicalModels[0].catalog.schemata[0].oldName
# change the oldName field value
grt.root.wb.doc.physicalModels[0].catalog.schemata[0].oldName = "newname"
3 голосов
/ 15 апреля 2010

Честно? Я думаю, что это ошибка. Я сталкивался с одной и той же проблемой несколько раз, и я не уверен, в чем проблема.

Я предлагаю проверить репозиторий ошибок и, если вы ничего не найдете, сообщить об этом как о новом.

1 голос
/ 22 мая 2013

Я всегда использую синхронизацию успешно несколько раз! Но сегодня у меня такая же проблема - и удивительный путь?

Итак, я изучаю отчет об ошибках MySQL и нахожу проблему ...

Не используйте заглавные буквы или подчеркивания в имени базы данных

Итак, я:

  • переименуйте мою базу данных,
  • изменить название модели в «Обзоре модели»
  • и измените имя Схемы по умолчанию, используйте в «Параметры подключения».

И это работает! ... теперь мне нужно изменить имя базы данных в конфиге приложения ...

...