如何从postgresql打印表结构



我在浏览器中使用phpPgAdmin,在Windows中使用PgAdmin III。是否有办法将整个数据库的表结构打印出来?

导出数据库模式的标准方法是pg_dump:

#!/bin/sh
pg_dump --schema-only MYDBNAME > output-file.sql

结合pg_dump和pg_restore列表过滤的稍微好一点的方法:

#!/bin/sh
dump=`mktemp`
list=`mktemp`
pg_dump --schema-only MYDBNAME -Fc -f $dump
pg_restore -l $dump | grep ' TABLE ' > $list
pg_restore -L $list $dump > output-file.sql
rm $list $dump

如果您喜欢GUI向导,可以在PgAdmin III中生成pg_dump命令:

  • 右键单击对象浏览器中的数据库,选择"备份"
  • 选择目标文件名(通常扩展名为。sql或。txt)
  • 选择"Plain"格式。(即文本格式)
  • 在"Dump Options #1"选项卡上,勾选"Only Schema"
  • 点击"备份"

注意:结果文件将不仅有表,还包括所有其他对象(视图,函数等)。如果您只需要最少的打印输出,您可以在文本编辑器中编辑此文件并删除不需要的内容。只留下"Type: TABLE;"项

如果你是Windows和pgAdmin,你应该在C:Program filespostgresql<version>binpsql的某个地方有psql。

运行psql,然后你有d打印所有的表和索引和d <table_name>给你关于一个表的详细信息。

您可以根据需要一次完成一个。右键单击pgAdminIII中的表格,进入报告,选择"数据字典报告"。

对于输出格式,选择"XHTML 1.0 Transitional",选择"Embed the default stylesheet"选项,给它一个文件名,然后单击OK。

在浏览器中打开XML文件并打印。

相关内容

  • 没有找到相关文章

最新更新