在 Mysql Workbench 中保存并导出 EER 图布局
Save and export EER diagram layout in Mysql Workbench
我正在使用 Mysql Workbench 在我的一个项目中设计数据库。我最初的目标是找到一种方法来管理 .mwb
文件(Mysql workbench 文件)和 git 的版本,但我认为这是不可能的,因为.mwb
文件是二进制文件。
然后我有了另一个想法。我可以管理用 sql
编写并由 Mysql Workbench 导出的数据库创建脚本,而不是管理 mwb
文件,并且 sql
文件包含文本, git 能够管理它的版本!然而,我发现了另一个问题:当你得到更新的sql
文件并将其导入Workbench时,EER图没有恢复,你总是必须重新创建它(在菜单Model-->Create下diagram from catalog objects),原来的图的布局实际上丢失了。
那么,是否可以从 Mysql workbench 保存和导出图表的布局?
简短的回答是:MySQL Workbench 模型不是用来进行版本控制的。
长答案:模型 (.mwb) 文件只是模型的 zip xml(内存中 GRT 树的流出文档,其中包含所有设计信息)+ 一些其他内容就像附加的 scripts/notes 和在 table 编辑器(一个 sqlite 数据库)的插入选项卡中定义的测试数据。这里的主要问题是 WB 不保存 xml,而是保存 mwb 文件。所以,如果你把 xml 放在你的 git 仓库中,你将不得不不断地从 mwb 中提取它,这就是为什么几乎不可能将模型文件置于版本控制之下的原因。
我正在使用 Mysql Workbench 在我的一个项目中设计数据库。我最初的目标是找到一种方法来管理 .mwb
文件(Mysql workbench 文件)和 git 的版本,但我认为这是不可能的,因为.mwb
文件是二进制文件。
然后我有了另一个想法。我可以管理用 sql
编写并由 Mysql Workbench 导出的数据库创建脚本,而不是管理 mwb
文件,并且 sql
文件包含文本, git 能够管理它的版本!然而,我发现了另一个问题:当你得到更新的sql
文件并将其导入Workbench时,EER图没有恢复,你总是必须重新创建它(在菜单Model-->Create下diagram from catalog objects),原来的图的布局实际上丢失了。
那么,是否可以从 Mysql workbench 保存和导出图表的布局?
简短的回答是:MySQL Workbench 模型不是用来进行版本控制的。
长答案:模型 (.mwb) 文件只是模型的 zip xml(内存中 GRT 树的流出文档,其中包含所有设计信息)+ 一些其他内容就像附加的 scripts/notes 和在 table 编辑器(一个 sqlite 数据库)的插入选项卡中定义的测试数据。这里的主要问题是 WB 不保存 xml,而是保存 mwb 文件。所以,如果你把 xml 放在你的 git 仓库中,你将不得不不断地从 mwb 中提取它,这就是为什么几乎不可能将模型文件置于版本控制之下的原因。