Einführung in das Anzeigen von Postgres-Spaltennamen und des information_schema

Wenn Sie Informationen zu einer PostgreSQL-Tabelle oder einem anderen Objekt benötigen, kann es hilfreich sein, sich das Schema dieses Objekts anzusehen. In PostgreSQL können diese Schemas zusammen mit anderen wichtigen Informationen angezeigt werden, indem Sie auf die information_schema. In diesem Artikel zeigen wir Ihnen, wie Sie eine Verbindung zu PostgreSQL herstellen und ein Tabellenschema mithilfe des Postgres information_schema anzeigen.,

Voraussetzungen zur Verwendung von PostgreSQL

Bevor wir versuchen, eine Verbindung zu PostgreSQL herzustellen und einige SQL-Anweisungen auszuführen, gehen wir einige der wichtigsten Voraussetzungen für diese Aufgabe durch:

  • Stellen Sie zunächst sicher, dass PostgreSQL auf Ihrem Gerät installiert ist. Wenn Sie nicht sicher sind, ob dieser Dienst installiert ist, verwenden Sie den Befehl service postgresql status, um herauszufinden, ob der Status activeist.

  • Sie müssen auch psql installieren, um mit PostgreSQL über die Befehlszeile zu interagieren., Sie können den Befehl psql -V verwenden, um zu bestätigen, dass diese interaktive PostgreSQL-Schnittstelle installiert ist und auf Ihrem Computer funktioniert.

Erstellen Sie eine Datenbank für Postgres, die zum Anzeigen des Tabellenschemas verwendet wird

Wenn Sie auf Ihrem Server keine PostgreSQL-Datenbank eingerichtet haben, erstellen Sie eine, mit der Sie diesem Tutorial folgen können., Sie können eine Datenbank mit dem folgenden Befehl erstellen:

1
CREATE DATABASE some_db;
  • Geben Sie den Befehl \l in die psql Befehlszeilenschnittstelle ein, um eine Liste aller Datenbanken auf Ihrem Postgres-Server anzuzeigen.
  • Verwenden Sie als Nächstes den Befehl \c gefolgt vom Datenbanknamen, um eine Verbindung zu dieser Datenbank herzustellen.,

Zugriff auf PostgreSQL über die Befehlszeilenschnittstelle ‚psql‘

Mit dem folgenden Befehl können Sie über die psql Befehlszeilenschnittstelle auf eine PostgreSQL-Datenbank zugreifen:

1
sudo su-postgres

Sie werden nach dem Passwort gefragt. Nach der Eingabe haben Sie Zugriff auf PostgreSQL.,

Sobald Sie verbunden sind, verwenden Sie den folgenden Befehl aus, um den Zugriff auf Ihre Datenbank mit einem Benutzernamen:

1
psql some_username -h 127.0.0.1 -d some_database

-d Flagge bedeutet die Postgres-Datenbank-name. Wenn Sie erneut nach einem Passwort gefragt werden, geben Sie es einfach ein und drücken Sie die EINGABETASTE.,

Alle PostgreSQL-Tabellen für die Datenbank anzeigen

Wenn Sie alle Tabellen anzeigen möchten, die bereits erstellt wurden, können Sie entweder den Befehl \d oder verwenden, um sie aufzulisten., Diese Befehle geben eine Tabelle zurück, die PostgreSQL-Tabellendaten im folgenden Format enthält:

Zeigen Sie die PostgreSQL-Tabelle mit dem Schema ‚pg_catalog‘ an

Sie können auch eine SELECT Anweisung verwenden, um die pg_catalog Schema für alle Tabellen in der aktuellen Datenbank anzuzeigen:

1
SELECT * FROM pg_catalog.pg_tables WHERE schemaname != ‚pg_catalog‘ UND schemaname !,= ‚information_schema‘;

Die obige Anweisung zeigt den Namen, den Eigentümer der Tabelle, alle Indizes und andere Informationen an:

HINWEIS: Wir verwenden die Klausel WHERE, um die zurückgegebenen Set-PostgreSQL-Tabellen zu filtern. Der!= – Operator, der in unsererWHERE – Klausel verwendet wird, gibt an, dass der Wert vonschemanameNOT EQUAL TO die angegebene Bedingung sein muss.,

Stellen Sie eine Verbindung zu Postgres her, um das Tabellenschema und die Spaltennamen anzuzeigen

Sehen wir uns einige weitere Beispiele an, die die information_schema verwenden, um auf Spalten-und Schemainformationen für eine bestimmte PostgreSQL-Tabelle zuzugreifen:

1
2
3
SELECT * FROM information_schema.,spalten
WOBEI table_schema = ’some_schema‘
UND TABLE_NAME = ’some_table‘;

HINWEIS: Wenn Sie auf Tabellennamen und Schema-Zeichenfolgenwerte in Ihrer WHERE – Klausel verweisen, sollten Sie diese in Anführungszeichen setzen (') markiert, um Fehler zu vermeiden.,

The next SQL statement will return all the information_schema‘s attributes for a particular table:

1
SELECT * FROM information_schema.,columns WHERE TABLE_NAME = ’some_table‘;

Verwenden Sie das information_schema in Postgres, um die Spaltennamen für eine Tabelle abzurufen

Wenn Sie es vorziehen, nur auf die Spaltennamen einer Tabelle über die information_schema zuzugreifen.in Ihrer SELECT Anweisung:

1
WÄHLEN SIE column_name AUS information_schema.,mehrere Reihen von Daten die den Spaltennamen für die PostgreSQL-Tabelle:

1
2
3
4
5
6
7
column_name
————-
– id,
str
I
bool
(4 Zeilen)

Abschluss der PostgreSQL-Tabelle anzeigen schema verwenden

Wenn Sie die Arbeit mit Daten in PostgreSQL, werden Sie wahrscheinlich feststellen, selbst benötigen, um Informationen über Ihre Tische., Glücklicherweise ist es einfach, eine Verbindung zu PostgreSQL herzustellen und ein Tabellenschema mithilfe der information_schema. In diesem Artikel haben wir uns einige verschiedene Möglichkeiten angesehen, Informationen aus der information_schemaauszuwählen. Mithilfe dieser Beispiele können Sie auf die Informationen zugreifen, die Sie zu Ihren eigenen PostgreSQL-Tabellen und-Spalten benötigen.