DBeaver,从Postgres数据库导出表结构(属性)到.txt文件

75

我在使用DBeaver时遇到一些问题。我想将数据库中每个表的结构导出到.txt文件中。我找到了如何导出所有数据,但我不需要这些数据,只需要表结构。 如果你有一些可以将表结构导出为.csv的解决方案,那就太好了。

下面是关于表结构的图片:

https://imgur.com/a/oTVMFhw


1
你找到解决方法了吗? - Nishant Bhardwaz
我认为下面的解决方案并不能回答实际问题。问题是要显示表格,而不是查询。我认为没有直接的功能,我们需要进行DESC查询并将其复制为文本。 - Lokesh Sanapalli
4个回答

120

如果您希望将表结构保存为SQL创建语句,那么您可以直接打开左侧导航面板中的“表”,选择所有表格,然后右键单击并选择“生成SQL”-> DDL。


当尝试运行生成的脚本时,我遇到了SQL语法错误。 但是,如果我逐个运行创建语句,则它们都会被创建。 - HomeIsWhereThePcIs
9
这种生成DDL的方法无法保持正确的表顺序。子表可能会排在父表之前,导致外键引用出错。 - Amit Naidu
@AmitNaidu,你有办法创建正确的表和视图顺序的DDL吗? - PURVESH PATEL
@PURVESHPATEL 有一个选项叫做“分离外键”(或类似的东西,因为我使用的是pt-br版本)。 - undefined

71

点击Tables(表)-> Views Tables(查看表) -> 在右侧窗口中选择所有表格, 右键选择-> 生成SQL" -> DDL


1
我这样尝试了一下:
  • 双击表格列
  • 选择所有列
  • 右键单击鼠标并选择复制高级信息
  • 打开Excel -> 粘贴特殊内容 -> 选择文本选项
  • 您的整个表格数据结构将在Excel工作表中

这是一个糟糕的选择。想象一下,如果我有一个15+GB的数据库会怎样?很可能数据甚至无法适应内存进行复制/粘贴。你的计算机将会冻结。 - Oxydron
2
答案没问题,你可以只复制高级的表元数据而不包括实际数据。 - Felix K.
没问题,这对我也有效。你想要的只是表格列名、数据类型等。 - Ferhat

0

由于目前的写法,您的回答不清楚。请编辑以添加额外细节,帮助他人理解这如何回答所提出的问题。您可以在帮助中心找到有关如何撰写良好答案的更多信息。 - Community
根据目前的写法,你的回答不够清晰。请编辑以添加更多细节,帮助他人理解这如何回答所提出的问题。你可以在帮助中心找到关于如何撰写好回答的更多信息。 - undefined
我实际上发现这个很有用,而且只有一个问题解决了答案。(没有其他人提到导出功能)。 - undefined
看起来获取数据插入/复制是必须的。可惜没有跳过数据,只导出结构的选项。也许我错过了吗? - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接