2016-03-29 12 views
0

Zum Beispiel, wenn ich eine Kopie einer Tabelle mit create:pgAdmin zeigt keine Spaltennamen nach einer Kopie einer Tabelle erstellen

CREATE TABLE new 
AS 
SELECT * FROM old 

pgAdmin werden die Spaltennamen nicht zeigen, wenn ich nach rechts auf die Schaltfläche Tabelle und wählen Sie dann View Data -> View Top 100 Rows

+3

Was meinen Sie "ohne Spaltennamen". Sie können keine Tabelle "ohne Spaltennamen" haben. Die Anweisung, die Sie angezeigt haben, wird die Spaltennamen aus der Tabelle "alt" auf jeden Fall beibehalten. –

+0

Was siehst du, wenn du 'aus * auswählst '? Wenn die Tabelle erstellt wurde, werden Spaltennamen angezeigt. –

+0

Übrigens, es versteht sich von selbst, dass Ihr Tisch nicht wirklich neu heißt, denn es ist ein reserviertes Wort ... –

Antwort

0

Postgres als Feature, das entspricht was Sie brauchen, namens Vererbung. Sie erstellen eine Tabelle mit den Spalten, die Sie benötigen, nachdem alle Tabellen, die von Ihrer Basistabelle übernehmen, die gleiche Struktur haben. Beispiel: Beispiel: Sie haben eine Basistabelle mit dem Namen Rechnungen (keine Daten hier einfügen ....), Sie erstellen eine Tabelle, die Inherits requests_2016 und andere rechnungen_2017 aufruft (Sie können direkt einfügen oder Trigger zum Einfügen erstellen die richtige Tabelle), wenn Sie aus Invoices_2016 auswählen, sehen Sie nur die Datensätze aus dieser Tabelle ... Wenn Sie aus Rechnungen wählen, werden PostgreSätze aus Rechnungen_2016 und Rechnungen_2017 (alle Tabellen, die aus Rechnungen übernommen werden) zurückgeben.

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

Verwandte Themen