Was entspricht show tables
(von MySQL) in PostgreSQL?
postgresql
Flybywire
quelle
quelle
Antworten:
Über die
psql
BefehlszeilenschnittstelleWählen Sie zunächst Ihre Datenbank aus
Dies zeigt dann alle Tabellen im aktuellen Schema:
Programmatisch (oder
psql
natürlich auch über die Schnittstelle):Die Systemtabellen befinden sich in der
pg_catalog
Datenbank.quelle
\l
entsprichtshow databases
MySQL.dt
≃show tables
undl
≃show databases
\dt
ist sehr nützlich. Diespg_catalog.pg_tables
ist viel weniger der Fall, da interne Tabellen zusammen mit den vom Benutzer erstellten Tabellen für jede Datenbank zusammengefasst werden, mit der Sie gerade verbunden sind.psql my_db_name
sollte ausgeführt werden, um\dt
zu arbeiten. Als ichpsql
ohne Datenbanknamen lief , bekam ich eine Nachricht "Keine Beziehungen gefunden"SELECT * FROM pg_catalog.pg_tables WHERE schemaname != 'pg_catalog' AND schemaname != 'information_schema'
\c <DATABASE_NAME>
Ihre Datenbank auswählen.Als Superuser anmelden:
Sie können alle Datenbanken und Benutzer nach
\l
Befehl auflisten (andere Befehle nach auflisten\?
).Nun , wenn Sie andere Datenbanken sehen möchten , können Sie Benutzer / Datenbank ändern , indem Sie
\c
wie Befehl\c template1
,\c postgres postgres
und die Verwendung\d
,\dt
oder\dS
um zu sehen , Tabellen / Ansichten / etc.quelle
(Zur Vollständigkeit)
Sie können auch das Informationsschema (SQL-Standard) abfragen :
quelle
Sie können das interaktive Terminal Psql von PostgreSQL verwenden, um Tabellen in PostgreSQL anzuzeigen.
1. Starten Sie Psql
Normalerweise können Sie den folgenden Befehl ausführen, um psql einzugeben:
Zum Beispiel,
psql template1 postgres
Eine Situation, die Sie möglicherweise haben, ist: Angenommen, Sie melden sich als root an und erinnern sich nicht an den Datenbanknamen. Sie können Psql einfach zuerst eingeben, indem Sie Folgendes ausführen:
In einigen Systemen ist der Befehl sudo nicht verfügbar. Sie können stattdessen einen der folgenden Befehle ausführen:
2. Tabellen anzeigen
Jetzt können Sie in Psql Befehle ausführen wie:
\?
Listen Sie alle Befehle auf\l
Datenbanken auflisten\conninfo
Informationen zur aktuellen Verbindung anzeigen\c [DBNAME]
Verbindung zu neuer Datenbank herstellen, z.\c template1
\dt
Listet Tabellen des öffentlichen Schemas auf\dt <schema-name>.*
Listen Sie Tabellen bestimmter Schemata auf, z.\dt public.*
\dt *.*
Liste Tabellen aller SchemataSELECT * FROM my_table;
(Hinweis: Eine Anweisung muss mit einem Semikolon abgeschlossen werden.;
)\q
Beenden Sie psqlquelle
Erste Anmeldung als Postgres-Benutzer:
sudo su - postgres
Verbindung zur gewünschten Datenbank herstellen:
psql -d databaseName
\dt
würde die Liste aller Tabellen in der Datenbank zurückgeben, mit der Sie verbunden sind.quelle
Wenn Sie psql mit dem Flag -E ausführen, wird die Abfrage wiederholt, die intern zum Implementieren von \ dt und ähnlichem verwendet wird:
quelle
Melden Sie sich als Superuser an, damit Sie alle Datenbanken und ihre Schemata überprüfen können: -
Dann können wir mit dem folgenden Befehl zur postgresql-Shell gelangen: -
Sie können jetzt die gesamte Datenbankliste mit dem folgenden Befehl überprüfen: -
Wenn Sie auch die Größe der Datenbanken überprüfen möchten, verwenden Sie: -
Drücken Sie
q
, um zurückzukehren.Sobald Sie Ihre Datenbank gefunden haben, können Sie mit dem folgenden Befehl eine Verbindung zu dieser Datenbank herstellen: -
Sobald die Verbindung hergestellt ist, können Sie die Datenbanktabellen oder das Schema überprüfen, indem Sie: -
Um zur Shell zurückzukehren, verwenden Sie: -
Um die Details einer bestimmten Tabelle weiter zu sehen, verwenden Sie: -
Um zu postgresql_shell zurückzukehren, drücken Sie
\q
.Und um zum Terminal zurückzukehren, drücken Sie
exit
.quelle
Wenn Sie nur die Liste der von Ihnen erstellten Tabellen anzeigen möchten, können Sie nur sagen:
\dt
Wir haben aber auch welche, mit
PATTERN
denen Sie die anzuzeigenden Tabellen anpassen können. Um alle einschließlichpg_catalog
Schema anzuzeigen, können Sie hinzufügen*
.\dt *
Wenn Sie tun:
\?
quelle
Verwenden Sie nur eine Tabelle sehen
Wenn Sie Schematabellen sehen möchten
Wenn Sie bestimmte Schematabellen anzeigen möchten
quelle
+
mitS
. Letzteres (der Buchstabe) zeigt Schematabellen. Das+
zeigt einfach zusätzliche Informationen.Stellen Sie zunächst mit dem folgenden Befehl eine Verbindung zur Datenbank her
Und Sie werden diese Nachricht sehen -
You are now connected to database database_name
. Und sie führen den folgenden Befehl ausIn Datenbankname und Tabellenname aktualisieren Sie einfach mit Ihrem Datenbank- und Tabellennamen
quelle
Wenn Sie pgAdmin4 in PostgreSQL verwenden, können Sie damit die Tabellen in Ihrer Datenbank anzeigen:
quelle
Beachten Sie, dass
\dt
nur Tabellen im öffentlichen Schema der von Ihnen verwendeten Datenbank aufgelistet werden. Ich mag es, meine Tabellen in separaten Schemata zu halten, daher hat die akzeptierte Antwort bei mir nicht funktioniert.Um alle Tabellen innerhalb eines bestimmten Schemas aufzulisten , musste ich:
1) Stellen Sie eine Verbindung zur gewünschten Datenbank her:
2) Geben Sie den Schemanamen an, für den Tabellen nach dem
\dt
Befehl angezeigt werden sollen, wie folgt:Dies zeigt mir die Ergebnisse, die mich interessieren:
quelle
quelle
\ dt (kein * erforderlich) - listet alle Tabellen für eine vorhandene Datenbank auf, mit der Sie bereits verbunden sind. Auch nützlich zu beachten:
\ d [Tabellenname] - Zeigt alle Spalten für eine bestimmte Tabelle an, einschließlich Typinformationen, Referenzen und Schlüsseleinschränkungen.
quelle
Sie können die Tabellen in der aktuellen Datenbank mit auflisten
\dt
.Fwiw
\d tablename
zeigt Details zu der angegebenen Tabelle an, ähnlich wieshow columns from tablename
in MySQL, jedoch mit etwas mehr Informationen.quelle
Verwenden von psql : \ dt
Oder:
quelle
Zunächst müssen Sie sich wie mit Ihrer Datenbank verbinden
Meine Datenbank ist Ubuntu
Verwenden Sie diesen Befehl, um eine Verbindung herzustellen
Diese Meldung wird angezeigt
Jetzt
Führen Sie diesen Befehl aus, um alle darin enthaltenen Tabellen anzuzeigen
quelle
Der einfachste Weg, alle Tabellen in der Befehlszeile aufzulisten, ist für meinen Geschmack:
Fügen Sie für eine bestimmte Datenbank einfach den Datenbanknamen hinzu:
Es funktioniert sowohl unter Linux als auch unter Windows.
quelle
als schneller Oneliner
oder wenn Sie einen viel klareren json output multi-liner bevorzugen:
quelle
\ dt listet Tabellen auf und "\ pset pager off" zeigt sie im selben Fenster an, ohne zu einer separaten zu wechseln. Lieben Sie dieses Merkmal zu Tode in dbshell.
quelle
Führen Sie aus, um fremde Tabellen in psql anzuzeigen
\dE
quelle
Geben Sie zunächst ein, welche Datenbank Sie verbinden müssen
Dies zeigt dann alle Tabellen im aktuellen Schema:
quelle
Zuerst können Sie sich mit der postgrre.app auf dem Mac oder mit postico mit Ihrer postgres-Datenbank verbinden. Führen Sie den folgenden Befehl aus:
Wenn Sie dann Ihr Passwort eingeben, sollte dies den Zugriff auf Ihre Datenbank ermöglichen
quelle