Postgres Spaltentyp abrufen

Postgres Spaltentyp Abrufen



Ein Spaltentyp bezieht sich auf das Datenformat oder den Datentyp, der einer bestimmten Spalte in einer Datenbanktabelle zugewiesen ist. Spaltentypen bestimmen den Datentyp, den wir in einer bestimmten Spalte speichern können, z. B. Ganzzahlen, Text, Datumsangaben oder boolesche Werte.

Das Verständnis der Spaltentypen ist für Datenbankadministratoren von entscheidender Bedeutung, da es dazu beiträgt, die Abfrageeffizienz und die ordnungsgemäße Datenverarbeitung sicherzustellen.

In diesem Tutorial werden die verschiedenen Methoden zum Abrufen der Spaltentypen in PostgreSQL untersucht, einschließlich Tools wie PSQL.







Beispieltabelle

Die folgenden Beispielabfragen veranschaulichen, wie eine einfache Tabelle mit drei Spalten verschiedener Datentypen erstellt wird:



TABELLE ERSTELLEN, Beispieltabelle (
id SERIELLER PRIMÄRSCHLÜSSEL,
Name VARCHAR(50),
Alter INT
);

Sobald wir die Tabelle definiert haben, die wir zu Demonstrationszwecken verwenden, können wir die verschiedenen Methoden zum Abrufen der Spaltentypen in PostgreSQL erkunden.



Methode 1: Verwenden des INFORMATION_SCHEMA

Die gebräuchlichste Methode zum Abrufen der Metadateninformationen zu verschiedenen Datenbankobjekten in PostgreSQL ist die Verwendung des INFORMATION_SCHEMA-Katalogs.





Um den Spaltentyp mithilfe der Tabelle „information_schema“ abzurufen, können wir die folgende Abfrage ausführen:

SELECT Tabellenname, Spaltenname, Datentyp
VON information_schema.columns
WHERE table_schema = 'public';

Die vorherige Abfrage ruft den Tabellennamen, den Spaltennamen und den Datentyp für alle Spalten im öffentlichen Schema ab. Passen Sie die Bedingung table_schema an, um die Spalten aus einem bestimmten Schema abzurufen.



Unter der Annahme, dass wir nur „sample_table“ im öffentlichen Schema haben, sollten wir eine Ausgabe wie im Folgenden sehen:

Tabellenname  | Spaltenname | Datentyp
-------------+-------------+-------------------
Beispieltabelle | id          | ganze Zahl
Beispieltabelle | Alter         | ganze Zahl
Beispieltabelle | Name        | Charakter unterschiedlich
(3 Reihen)

Wie wir sehen können, erhalten wir den Tabellennamen, den Spaltennamen und den entsprechenden Datentyp.

Methode 2: Verwenden der PSQL-Befehle

Wir können auch den Befehl „\d“ des PSQL-Dienstprogramms verwenden, um die Informationen zu einer bestimmten Tabellenspalte abzurufen.

Sobald Sie mit der Zieldatenbank verbunden sind, verwenden Sie „\d“, gefolgt vom Tabellennamen, wie im Folgenden gezeigt:

\d Tabellenname

Beispiel:

\d sample_table;

Der angegebene Befehl sollte die Ausgabe wie folgt zurückgeben:

Die Ausgabe umfasst die Spaltennamen, Datentypen und andere Informationen zur Tabellenstruktur.

Methode 3: Verwenden der Pg_attribute-Katalogtabelle

Wir können auch die Katalogtabelle pg_attribute abfragen, um den Datentyp einer Tabellenspalte abzurufen. Die Abfragesyntax lautet wie folgt:

SELECT attname AS columns_name, format_type(atttypid, atttypmod) AS data_type
VON pg_attribute
WHERE attrelid ='target_table'::regclass
UND attnum > 0
UND NICHT attisdropped;

Ersetzen Sie den Parameter target_table durch den Tabellennamen, in dem sich Ihre Zielspalte befindet.

Ein Beispiel ist wie folgt:

SELECT attname AS columns_name, format_type(atttypid, atttypmod) AS data_type
VON pg_attribute
WHERE attrelid = 'sample_table'::regclass
UND attnum > 0
UND NICHT attisdropped;

Dies sollte die Spaltennamen und den entsprechenden Datentyp wie folgt zurückgeben:

Abschluss

Wir haben die drei Hauptmethoden zum Anzeigen des Datentyps einer Tabellenspalte mithilfe der PostgreSQL-Tools untersucht. Das Abrufen des Spaltendatentyps ist für die Erstellung effizienter und kompatibler Anwendungsabfragen von entscheidender Bedeutung.