0

我在尝试在 Linux Debian(3.2.41-2)上的 MySQL Workbench(5.2.40,rev 8790)中更改 EER 模型中现有表的排序规则时遇到了麻烦。

我的修改脚本如下所示:

ALTER TABLE `my_db`.`articles` COLLATE = utf8_general_ci;

ALTER TABLE `my_db`.`articles_tags` COLLATE = utf8_general_ci;

ALTER TABLE `my_db`.`articles_tags_assignment` COLLATE = utf8_general_ci;

等大约数百张桌子。

当我转到File > Import > Reverse Engineer MySQL Create Script... 并选择上述脚本时,按下“Execute”,它会显示“Import finished”。

但实际上,当我转到数据库>同步模型...单击所有详细信息并找到差异...然后我看到它仍然认为我的 EER 模型具有旧的排序规则(latin1_swedish_ci)。

我做错了什么还是应该将其报告为 MySQL 工作台中的错误?

4

2 回答 2

0

正如菜单条目所说,MySQL Workbench 需要一个创建脚本,即包含 CREATE 语句的脚本。如果您只想更改少数排序规则,只需在表格编辑器中进行。大规模更改有点困难,因为您只能使用脚本中的插件来做到这一点。有一个用于更改所有表的存储引擎的插件。也许这可以帮助您入门。

于 2013-05-24T07:57:12.227 回答
0

我不是 100% 确定这会奏效,但如果其他人试图实现上述目标,则值得一试:

  • 使用“正向工程师”创建模型中描述的数据库实例
  • 在您创建的实例上执行您的更改脚本
  • 使用“同步模型”并将所有操作更改为“更新模型”以将更改导入回工作台
于 2014-02-28T06:49:37.333 回答