创建表

时间:2016-03-29 13:35:00

标签: pgadmin

例如,如果我使用:

创建表的副本
CREATE TABLE new 
AS
SELECT * FROM old
当我右键单击表格然后选择View Data -> View Top 100 Rows

时,

pgAdmin不会显示列名

2 个答案:

答案 0 :(得分:0)

Postgres作为满足您需求的功能,称为继承。在从基表继承的所有表具有相同结构后,您可以创建一个包含所需列的表。

实施例: 你有一个名为发票的基表(不要在这里插入数据......),你创建了一个表名为Invoices_2016和其他发票_2017(您可以直接插入或创建触发器以插入正确的表中) ),当您从Invoices_2016中选择时,您只能看到该表中的记录...如果您从发票中选择,postgres将从Invoices_2016和Invoices_2017(所有从发票继承的表)中返回记录。

http://www.postgresql.org/docs/current/static/ddl-inherit.html

答案 1 :(得分:0)

我也有这个问题。对于那些不了解OP描述的问题的人(即所有人),发生的事情是,在运行sql查询时,列名是完全可见的,但是pgadmin中最上面的灰线(名称和类型应该在其中)为空。另外,“行(估计)”为0,每个表视图都会收到有关应如何运行VACUUM的警告。

如果打开一个窗口然后进行一些主要的操作,例如删除,创建和填充表格。如果我关闭pgadmin并在SQL更新完成后重新打开,则其行为正常。对我来说似乎是个错误。