Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
PG_ _ TABLE DEF
Speichert Informationen zu Tabellenspalten.
PG_ TABLE _ gibt DEF nur Informationen über Tabellen zurück, die für den Benutzer sichtbar sind. Wenn PG_ TABLE _ DEF nicht die erwarteten Ergebnisse zurückgibt, stellen Sie sicher, dass der search_path Parameter korrekt eingestellt ist, sodass er die entsprechenden Schemas enthält.
Mit SVV_TABLE_INFO können Sie umfassendere Informationen zu einer Tabelle anzeigen, einschließlich der Datenverteilungsverzerrung, der Schlüsselverteilungsverzerrung, der Tabellengröße und statistischer Daten.
Tabellenspalten
Spaltenname | Datentyp | Beschreibung |
---|---|---|
schemaname | Name | Schemaname. |
tablename | Name | Tabellenname. |
column | Name | Spaltenname. |
type | Text | Datentyp der Spalte. |
encoding | character(32) | Kodierung der Spalte. |
distkey | Boolean | „True“, wenn diese Spalte der Verteilungsschlüssel für die Tabelle ist. |
sortkey | integer | Reihenfolge der Spalte im Sortierschlüssel. Wenn die Tabelle einen zusammengesetzten Sortierschlüssel verwendet, haben alle zu dem Sortierschlüssel gehörenden Spalten einen positiven Wert, der die Position der Spalte in dem Sortierschlüssel angibt. Wenn eine Tabelle einen überlappenden Sortierschlüssel verwendet, hat jede zu dem Sortierschlüssel gehörende Spalte einen positiven oder negativen Wert, wobei der absolute Wert die Position der Spalte in dem Sortierschlüssel angibt. Bei 0 gehört die Spalte nicht zu einem Sortierschlüssel. |
notnull | boolesch | Stimmt, wenn die Spalte eine NOT NULL Einschränkung hat. |
Beispiel
Das folgende Beispiel zeigt die Spalten mit zusammengesetzten Sortierschlüsseln für die COMPOUND Tabelle LINEORDER _.
select "column", type, encoding, distkey, sortkey, "notnull" from pg_table_def where tablename = 'lineorder_compound' and sortkey <> 0; column | type | encoding | distkey | sortkey | notnull -------------+---------+----------+---------+---------+-------- lo_orderkey | integer | delta32k | false | 1 | true lo_custkey | integer | none | false | 2 | true lo_partkey | integer | none | true | 3 | true lo_suppkey | integer | delta32k | false | 4 | true lo_orderdate | integer | delta | false | 5 | true (5 rows)
Das folgende Beispiel zeigt die verschachtelten Sortierschlüsselspalten für die Tabelle LINEORDER _INTERLEAVED.
select "column", type, encoding, distkey, sortkey, "notnull" from pg_table_def where tablename = 'lineorder_interleaved' and sortkey <> 0; column | type | encoding | distkey | sortkey | notnull -------------+---------+----------+---------+---------+-------- lo_orderkey | integer | delta32k | false | -1 | true lo_custkey | integer | none | false | 2 | true lo_partkey | integer | none | true | -3 | true lo_suppkey | integer | delta32k | false | 4 | true lo_orderdate | integer | delta | false | -5 | true (5 rows)
PG_ TABLE _ DEF gibt nur Informationen für Tabellen in Schemas zurück, die im Suchpfad enthalten sind. Weitere Informationen finden Sie unter search_path.
Nehmen wir zum Beispiel an, Sie erstellen ein neues Schema und eine neue Tabelle und fragen dann TABLE PG_ _ ab. DEF
create schema demo; create table demo.demotable (one int); select * from pg_table_def where tablename = 'demotable'; schemaname|tablename|column| type | encoding | distkey | sortkey | notnull ----------+---------+------+------+----------+---------+---------+--------
Die Abfrage gibt für die neue Tabelle keine Zeilen zurück. Prüfen Sie die Einstellung für search_path
.
show search_path; search_path --------------- $user, public (1 row)
Fügen Sie das Schema demo
zum Suchpfad hinzu und führen Sie die Abfrage erneut aus.
set search_path to '$user', 'public', 'demo'; select * from pg_table_def where tablename = 'demotable'; schemaname| tablename |column| type | encoding |distkey|sortkey| notnull ----------+-----------+------+---------+----------+-------+-------+-------- demo | demotable | one | integer | none | f | 0 | f (1 row)