我见过很多工具可以从现有数据库中对 ERD 进行逆向工程,但是我一直无法找到能够以合理的方式自动布置图表的工具。他们中的大多数只是将所有实体放在一起,然后收工。有些人尝试组织实体,但他们做得并不好。
是否有任何工具可以对现有数据库的结构进行逆向工程,然后以易于理解并揭示数据库组织的方式自动对其进行布局?如果我要制作这样一个工具,我会让它最小化连接实体的线的长度,最小化相互交叉的线的数量,并使相关实体组彼此突出。我还会尝试推断哪些表是查找表,哪些表是 mana-to-many 中间表等,并布置实体,使这些角色对于查看图表的人来说是显而易见的。
我没有足够的资金来制作上述内容,但我确实有一些资金可以购买这样的工具,如果它很好的话。
编辑:我应该提到我正在尝试用 100 多个表绘制一个数据库,所以我想尽可能多地自动化它。数据库不是我非常熟悉的,所以我希望通过查看图表来学习,而不是将我所知道的转储到图表中(这似乎是大多数图表工具的设计目的)。
只要您的数据库中有外键,我发现 Visio 就可以做得很好。我有一个 postgresql 数据库,其中包含来自四个不同合并项目的大约 150 个表,这些表通过各种外键连接,并且它在提取所有关系并将表分组在一起方面做得非常出色。尽管有大量的外键,但该图只有几条重叠线。此外,由于外键逻辑元素很好地组合在一起,因此很清楚大多数表源自哪个数据库。
| 归档时间: |
|
| 查看次数: |
12188 次 |
| 最近记录: |