1

我有一个包含大约 50 个表的数据库。我想在每个表上运行报告“数据字典”。

理想情况下,我希望它们都在一个报告中,例如,在 PGAdminIII 中,如果我右键单击选择“表”,我将获得所有“对象”的报告,每个对象下都有一个数据字典报告。

是否有自动执行此操作的方法,或者我可以安装到 postgres 的插件?或者有没有类似的东西?

4

2 回答 2

2

如果我理解正确,您指的是鼠标右键单击 PgAdminIII 中的表并选择报告 > 数据字典报告的能力?

我不知道 PgAdminIII 有什么方法可以做到这一点。您可以考虑使用其他工具,例如 SchemaSpy。另一种选择(正如@kgrittn 所暗示的)是使用带有 \H 标志的 psql \d 来生成 html 输出。我的解决方案(因为 SchemaSpy 没有做我需要的事情,而且我需要 Postgres 和 Oracle 的相同输出)是使用 perl、DBD::Pg 和 Template::Toolkit 推出我自己的解决方案。

更新:添加了 GitHub 链接。

于 2012-04-10T20:42:20.907 回答
2

我用 Python 编写了一个相当简单的 Postgres 数据字典生成器,它涵盖了指定数据库中的所有模式和表。如果它不完全符合您的要求,那么修改将相当容易。

https://github.com/kylejmcintyre/pypostgreports

于 2015-11-13T00:29:57.670 回答