【问题标题】:Generate the ERD for an existing database [closed]为现有数据库生成 ERD [关闭]
【发布时间】:2011-03-29 07:29:52
【问题描述】:

我有一个 PostgreSQL 数据库。我想从该数据库生成 ERD。是否有任何内置工具可以做到这一点,或者是否有一些第三方工具?

【问题讨论】:

标签: database postgresql erd


【解决方案1】:

您可以使用 dbeaver 来执行此操作。它允许您将 ER 图导出为 png/svg 等。

DBeaver - https://dbeaver.io/

双击模式(例如,Schemas->public->Tables)并打开“ER Diagram”选项卡(在“Properties”选项卡旁边)

【讨论】:

  • 第二个!虽然我通常更喜欢 psql 终端,但有时我也使用 DBeaver CE(社区版;dbeaver.jkiss.org/download;一个优秀的、免费的开源平台)来查看数据和可视化 ERD。
  • 刚刚安装了DBeaver,可以得到我的数据库的E-R图。一个有效的工具。如果您有超过 100 个表,那么生成的 E-R 图将需要一些手动排列...
  • 这里是DBeaver ER Diagrams wiki page,其中包含有关布局和导出为图像文件格式的有用提示:
  • 它是开源的,同时接受的答案是针对提供有限试用的产品(DBVisualizer),并且在您需要购买许可证之后
  • 这个工具很好用。与接受的答案不同。谢谢你。
【解决方案2】:

pgAdmin 4 version 30 and newer 可以从现有数据库生成 ERD。只需右键单击数据库并选择Generate ERD (Beta)

【讨论】:

  • 我刚试过(在一个有 5 个表的小型数据库上),它似乎工作得很好!
  • 好的开始,但这并不能产生一切。例如,设计视图也会很有用。
  • 我们可以为某些表生成 ERD 吗?
【解决方案3】:

我们为此使用了DBVisualizer

说明: 引用图是一个很棒的功能,因为它会自动以图形样式呈现所有主/外键映射(也称为引用完整性约束)。表格节点和关系是自动布局的,有多种布局模式可用。生成的图表是独一无二的,因为它以最佳且可读的布局显示所有信息。 来自其网站

【讨论】:

  • 404 哎呀!该页面不存在。
  • 要在 postgres 中查找图表,我必须单击模式,然后单击表,然后在右侧窗口中单击“参考”选项卡。此功能在免费版本中也可用。
  • 也许这是一个临时问题,但在 Win 10 上的 v 11.0.4 中,该工具对我来说无法使用。GUI 有绘图问题,无法使用。
  • 也考虑下面的完美答案
  • 这个工具不支持 Postgres 的表继承。父表和子表在图中显示,没有任何视觉关系。
【解决方案4】:

pgModeler 可以从 PostgreSQL 数据库生成漂亮的 ER 图。

好像没有手册,但是没有手册也很简单。它是 QT 应用程序。 AFAIK、Fedora 和 Ubuntu 都有软件包。 (pgmodeler)

在最新版本的 pgModeler (0.9.1) 中,试用版允许您创建 ERD(设计按钮未被禁用)。这样做:

  1. 点击设计按钮首先创建一个空的“设计模型”
  2. 然后单击“导入”并连接到您想要的服务器和数据库(除非您已经在“管理”中进行了设置,在这种情况下,您的所有数据库都可以在第 3 步中选择)
  3. 导入所有对象(它会警告您正在导入到当前模型,这很好,因为它是空的)。
  4. 现在切换回“设计”选项卡以查看您的 ERD。

【讨论】:

  • 没那么容易。 “设计”按钮被禁用,并且没有提示如何启用它。
  • pgModeler 似乎是唯一一个,它支持表继承。
【解决方案5】:

https://www.dbvis.com/download/10.0下载 DbVisualizer

安装后创建数据库连接:

更改数据库的突出显示细节并通过单击 ping 服务器进行测试。最后点击连接

享受。

【讨论】:

  • 谢谢,为我工作。连接后 - 双击“表”并转到“参考”选项卡。这是link for details
【解决方案6】:

我编写了这个实用程序,它会自动从 postgres 数据库生成 DSL 代码,然后您可以将其粘贴到 dbdiagram.io/d 网站以获取 ER 图

https://github.com/nsingla/dbdiagrams

【讨论】:

    【解决方案7】:

    我们的团队在许多项目中都使用 Visual Paradigm 从数据库生成 ER 图。虽然我们主要研究 MS SQL 和 Oracle,但据我所知,它们也支持其他一些 DBMS,如 PostgreSQL、MySQL、Sybase、DB2 和 SQLite。

    步骤:

    1. 从 Visual 的工具栏中选择 Tools > DB > Reverse Database... 范式
    2. 保持设置不变,然后单击 Next 选择 PostgreSQL as 驱动程序并在那里提供驱动程序文件。您可以简单地点击 那里的下载链接以获取驱动程序。
    3. 输入主机名、数据库名、用户名和密码,然后点击下一步
    4. 然后他们将研究您的数据库并列出其中的表格。
    5. 选择表格以形成 ERD 并继续,就是这样。将生成一个 ERD,其中包含您选择的表格。

    顺便说一句,它们还支持从 ERD 生成和更新数据库架构。

    希望这会有所帮助。 :-)

    More information about generating ERD from PostgreSQL database

    【讨论】:

    • 免费社区版确实有这个功能
    【解决方案8】:

    ERBuilder可以从PostgreSQL数据库生成ER图(逆向工程功能)。

    生成ER图的步骤如下:

    • 点击菜单 -> 文件 -> 逆向工程

    • 点击新连接

    • 填写 PostgresSQL 连接信息

    • 点击确定

    • 点击下一步

    • 选择您想要逆向工程的对象(表、触发器、序列……)。

    • 单击下一步。

    • 如果您使用的是试用版,将显示您的 ERD 自动。
    • 如果您使用的是免费版,您需要拖动 并从应用程序左侧的树视图中删除表格

    【讨论】:

    • 没有开源。只需 15 天的试用期。
    【解决方案9】:

    【讨论】:

      【解决方案10】:

      我将 DrawERD 用于 ERD 和 DB 文档。 https://drawerd.com

      【讨论】:

        【解决方案11】:

        也许可以看看 AquaFold 的 Aqua Data Studio。它是一个带有实体关系图表的数据库 IDE。它还包括数据分析。它不是免费的,但考虑到它的功能,它的价格非常合理。

        【讨论】:

          【解决方案12】:

          postgresql_autodoc 是执行此操作的 cli。不做基数,但上面提到的 GUI 工具都不做。

          【讨论】:

            【解决方案13】:

            您可以从 PgAdmin 生成 ER 图。

            1. 打开 PgAdmin
            2. 右键单击任何表并选择语句,它将显示两个窗口一个是查询另一个是图形窗口,因此您可以添加要生成图表的表。
            3. 要保存,请转到另存为并选择图形查询(图像)

            【讨论】:

            • 我没有看到这样的选项,pgAdmin 4,2.1 版。表的上下文菜单中没有“选择语句”或“语句”
            【解决方案14】:
            1. 打开 MySQL 工作台。在主屏幕中单击“从现有数据库创建 EER 模型”。我们这样做是因为我们已经制作了数据库,现在我们想制作该数据库的 ER 图。

            2. 然后您将看到“逆向工程师数据库”对话框。在这里,如果要求您输入密码,请提供管理员密码。不要在这里与 windows 密码混淆。在这里,您需要提供 MySQL 管理员密码。然后点击下一步。

            3. 在下一个对话框中,您将看到与 DBMS 的连接已启动,并且模式已从数据库中恢复。下一步。

            4. 现在选择您之前创建的架构。它是您要为其创建 ER 图的表。

            5. 单击“下一步”并转到“选择对象”菜单。在这里,您可以单击“显示过滤器”以使用图表中选定的表对象。您可以在此处添加和删除表。然后单击执行。

            6.当您进入 Next 和 Finish 时,所需的 ER 图出现在屏幕上。

            【讨论】:

            • 不适用于 PostgreSQL 或其他数据库,它只适用于 MySQL
            猜你喜欢
            • 1970-01-01
            • 2010-09-22
            • 2011-05-18
            • 1970-01-01
            • 1970-01-01
            • 2011-01-06
            • 1970-01-01
            • 2011-02-25
            • 2012-06-30
            相关资源
            最近更新 更多