English 中文(简体)
Synchronize model in MySQL Workbench
原标题:

After reading the documentation for MySQL Workbench I got the impression that it s possible to alter a database in the server (e.g. add a new column) and later incorporate the DDL changes into your EER diagram. At least, it has a Synchronize Model option in the Database menu. I found it a nice feature because I could use a graphic modelling tool without becoming its prisoner.

In practice, when I run such tool I m offered these options:

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

I can t really understand it, but leaving it as is I basically get:

DROP SCHEMA my_database_name
CREATE SCHEMA my_database_name
CREATE TABLE my_table_name

This is a dump of the model that overwrites all remote changes in my_table_name.

Am I misunderstanding the feature?

最佳回答

Honestly? I think it s a bug. I ve run into the same problem on several occasions and I m not sure what the issue is.

I suggest checking the bug repository and, if you don t find anything, reporting this as a new one.

问题回答

Here is the real bug that you can follow. http://bugs.mysql.com/bug.php?id=61211 And there is a workaround from one of the mysql QA people:

A workaround is to open the Scripting Shell, inspect the name of the schema and make sure that the oldName field contains the same name as what you re trying to synchronize against. Commands for that are:

# 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"

I always use the synchronization successful several times! But today I have the same problem - and wonder way?

So I study the BUG-Report by MySQL and find the problem...

Don t use caps or underscore in the name of the database

So I am:

  • rename my database,
  • change the name of the model in the "Model Overview"
  • and change the name of the Default Schema, use in the "Connection Options".

And it works! ... now I have to change the name of the database in the applicationconfig ...





相关问题
SQL SubQuery getting particular column

I noticed that there were some threads with similar questions, and I did look through them but did not really get a convincing answer. Here s my question: The subquery below returns a Table with 3 ...

please can anyone check this while loop and if condition

<?php $con=mysql_connect("localhost","mts","mts"); if(!con) { die( unable to connect . mysql_error()); } mysql_select_db("mts",$con); /* date_default_timezone_set ("Asia/Calcutta"); $date = ...

php return a specific row from query

Is it possible in php to return a specific row of data from a mysql query? None of the fetch statements that I ve found return a 2 dimensional array to access specific rows. I want to be able to ...

Character Encodings in PHP and MySQL

Our website was developed with a meta tag set to... <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> This works fine for M-dashes and special quotes, etc. However, I ...

Pagination Strategies for Complex (slow) Datasets

What are some of the strategies being used for pagination of data sets that involve complex queries? count(*) takes ~1.5 sec so we don t want to hit the DB for every page view. Currently there are ~...

Averaging a total in mySQL

My table looks like person_id | car_id | miles ------------------------------ 1 | 1 | 100 1 | 2 | 200 2 | 3 | 1000 2 | 4 | 500 I need to ...

热门标签