mysql workbench如何把已有的数据库导出ER模型

mysql workbench的特长是创建表结构的,然后在结构图中,圈圈点点,很容易就利用可视化方式把数据库建好,然后再导入到数据库服务器中,这种办法很效率。但是有时我们有一个需求,事先没有建表结构模型,而是利用别的数据库软件建的数据库,并且我们还想利用workbench的表结构模型在上面修改,此时,如何所已有的数据库导出为模型表结构就是焦点了!

可以这样:
mysql <wbr>workbench如何把已有的数据库导出ER模型

mysql <wbr>workbench如何把已有的数据库导出ER模型

mysql <wbr>workbench如何把已有的数据库导出ER模型

mysql <wbr>workbench如何把已有的数据库导出ER模型

mysql <wbr>workbench如何把已有的数据库导出ER模型

mysql <wbr>workbench如何把已有的数据库导出ER模型

mysql <wbr>workbench如何把已有的数据库导出ER模型
如何导入数据库呢
mysql <wbr>workbench如何把已有的数据库导出ER模型

有很多人找不到升级后的workbench中浏览数据功能,就以为它没有,是大错特错的,下图就是
mysql <wbr>workbench如何把已有的数据库导出ER模型

mysql <wbr>workbench如何把已有的数据库导出ER模型
下面是写sql语句

mysql <wbr>workbench如何把已有的数据库导出ER模型
导入数据时的用法
mysql <wbr>workbench如何把已有的数据库导出ER模型

mysql <wbr>workbench如何把已有的数据库导出ER模型

如果建完表后,想修改某一字段怎么办?见图
mysql <wbr>workbench如何把已有的数据库导出ER模型


另类导入:说它另类导入是由于当时基于当初导出sql语句时而说的,一般导出有两种,1直接把数据库名都导出来了,然后不用创建数据库直接导入sql文件即行;2只导出了数据,没有导出数据库名。这个另类就指的此种情况。见下图
mysql <wbr>workbench如何把已有的数据库导出ER模型
其中有一个按键很隐蔽,如下图
mysql <wbr>workbench如何把已有的数据库导出ER模型
大家知道主键是自动添加索引的,但是不是主键的怎么办,当然也可以加的,请看下图
mysql <wbr>workbench如何把已有的数据库导出ER模型
点击表中的index,就可以看到手动加的索引了,如下图
mysql <wbr>workbench如何把已有的数据库导出ER模型
如果字段要设默认值怎么办,如下图
mysql <wbr>workbench如何把已有的数据库导出ER模型
下面是有点另类的用法,即枚举类型,一般刚入门的同学很少用到吧
mysql <wbr>workbench如何把已有的数据库导出ER模型
mysql <wbr>workbench如何把已有的数据库导出ER模型
如何查看表的关系,这个特点恐怕也是workbench的特长所在吧(为什么很多php程序员喜欢用它的原因)
mysql <wbr>workbench如何把已有的数据库导出ER模型

增加表与表的关联,这里要特别注意,数据库中的关系是最难设计的,而workbench在这方面有独特的工具,它代替了手工繁琐的工作,用工具一拖即可生成关系。注意当建立关联后,第一个表中会增加一个关联的字段,如果你嫌这个字段过长可以改,并且这个字段会模拟手工增加索引自动加上它的索引。这要从建表后点击这一字段查看其属性能看出来。很棒的功能哈!
mysql <wbr>workbench如何把已有的数据库导出ER模型
一个能提高工作效率的功能
mysql <wbr>workbench如何把已有的数据库导出ER模型

2018-2-28更新

Mysql workbench “Too many objects are selected for auto placement. Select fewer elements to create the EER diagram.”怎么解决? Workbench emits that "Resource Warning" error and then deselects the "Place imported objects on a diagram" option for you. Execute it again (click "Execute") without that option to execute the Reverse Engineering wizard. Then, create a new EER diagram, select all tables (objects) using the "Catalog" tab on the left pane, and then drag them onto the EER diagram canvas. This will take a few minutes or so to execute. When finished, optionally select "Autolayout" from the "Arrange" navigation menu and then wait another few minutes.

I just tested this with 2000 tables and it works.

Do you know how to auto arrange tables? Menu/Arrange/Autolayout arranges it, but anyway there are many tables located over other ones. – Renat Gatin Sep 10 '15 at 0:21

@Philip Olson, Yes its worked for me, but tables are located over other ones , suggest me how to arrange line by rows. – Rajkumar .E Mar 17 '17 at 5:37
转自:https://stackoverflow.com/questions/27700967/mysql-workbench-too-many-objects-are-selected-for-auto-placement-select-fewer
简要总结:
mysql workbench支持逆向工程建模,具体操作如下:
Menu
Database->Reverse Engineer...
弹出Reverse Engineer Database对话框
Connection Options
->next
Connection to DBMS
->next
Select Schemas
选择要逆向的数据库
Select Objects
->next
Reverse Engineer
->Execute
Results
->Finish

原文地址:https://www.cnblogs.com/jpfss/p/8482234.html