ändern - postgresql was ist ein schema




Zeige Tabellen in PostgreSQL (12)

  1. Erstmalige Anmeldung als Postgres-Benutzer:

    sudo su - postgres

  2. psql -d databaseName Verbindung zur erforderlichen psql -d databaseName : psql -d databaseName

  3. \dt würde die Liste aller Tabellen in der Datenbank zurückgeben, mit der Sie verbunden sind.

Was ist die Alternative zum show tables (von MySQL) in PostgreSQL?


(Zur Vollständigkeit)

Sie können auch das Informationsschema (SQL-Standard) abfragen:

SELECT
    table_schema || '.' || table_name
FROM
    information_schema.tables
WHERE
    table_type = 'BASE TABLE'
AND
    table_schema NOT IN ('pg_catalog', 'information_schema');

Das Ausführen von psql mit dem Flag -E wird die Abfrage widerspiegeln, die intern zum Implementieren von \ dt und ähnlichem verwendet wird:

sudo -u postgres psql -E

postgres=# \dt       
********* QUERY **********
SELECT n.nspname as "Schema",
c.relname as "Name", 
CASE c.relkind WHEN 'r' THEN 'table' WHEN 'v' THEN 'view' WHEN 'i' THEN 'index' WHEN 'S' THEN 'sequence' WHEN 's' THEN 'special' END as "Type",
pg_catalog.pg_get_userbyid(c.relowner) as "Owner"
FROM pg_catalog.pg_class c
    LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind IN ('r','')
    AND n.nspname <> 'pg_catalog'
    AND n.nspname <> 'information_schema'
    AND n.nspname !~ '^pg_toast'
AND pg_catalog.pg_table_is_visible(c.oid)
ORDER BY 1,2;        
**************************

In der Befehlszeilenschnittstelle von psql alle Tabellen im aktuellen Schema angezeigt:

\dt

Programmatisch (oder natürlich auch von der psql Schnittstelle):

SELECT * FROM pg_catalog.pg_tables;

Die Systemtabellen befinden sich in der Datenbank pg_catalog.


Sie können PostgreSQLs interaktives Terminal Psql verwenden, um Tabellen in PostgreSQL anzuzeigen.

1. Starten Sie Psql

Normalerweise können Sie den folgenden Befehl ausführen, um in psql einzutreten:

psql DBNAME USERNAME

Zum Beispiel psql template1 postgres

Eine Situation, die Sie möglicherweise haben, ist: Angenommen, Sie melden sich als root an und Sie erinnern sich nicht an den Datenbanknamen. Sie können einfach zuerst in Psql eingeben, indem Sie Folgendes ausführen:

sudo -u postgres psql

In einigen Systemen ist der Befehl sudo nicht verfügbar. Sie können stattdessen einen der folgenden Befehle ausführen:

psql -U postgres
psql --username=postgres

2. Zeige Tabellen

Jetzt könnten Sie in Psql Befehle ausführen wie:

  1. \? listet alle Befehle auf
  2. \l listet Datenbanken auf
  3. \conninfo zeigt Informationen zur aktuellen Verbindung an
  4. \c [DBNAME] Verbindung zur neuen Datenbank her, zB \c template1
  5. \dt listet Tabellen auf
  6. \q beende psql

Sie können die Tabellen in der aktuellen Datenbank mit \dt .

Fwiw, \d tablename zeigt Details über die angegebene Tabelle an, so wie show columns from tablename in MySQL, aber mit ein wenig mehr Informationen.


Wenn Sie nur die Liste der von Ihnen erstellten Tabellen anzeigen möchten, können Sie nur Folgendes sagen:

\dt

Aber wir haben auch PATTERN die Ihnen helfen werden, die PATTERN Tabellen anzupassen. Um alle einschließlich pg_catalog Schema pg_catalog , können Sie * hinzufügen.

\dt *

Wenn du es tust: \?

\ dt [S +] [PATTERN] Listentabellen


Wenn Sie pgAdmin4 in PostgreSQL verwenden, können Sie damit die Tabellen in Ihrer Datenbank anzeigen:

select * from information_schema.tables where table_schema='public';

Zuerst müssen Sie sich mit Ihrer Datenbank verbinden

Meine Datenbank ist ubuntu

Verwenden Sie diesen Befehl, um eine Verbindung herzustellen

 \c ubuntu

Diese Nachricht wird angezeigt

"Sie sind nun mit der Datenbank" ubuntu "als Benutzer" postgres "verbunden."

Jetzt

Führen Sie diesen Befehl aus, um alle darin enthaltenen Tabellen anzuzeigen

\d+

Zuerst verbinden Sie sich mit dem folgenden Befehl mit der Datenbank

\c database_name

Und Sie werden diese Nachricht sehen Sie sind jetzt mit der Datenbank datenbankname verbunden und sie führen den folgenden Befehl aus

SELECT * FROM table_name;

In Datenbank_Name und Tabellenname nur mit Ihrem Datenbank- und Tabellennamen aktualisieren


\ dt listet Tabellen auf und "\ pset pager off" zeigt sie im selben Fenster an, ohne zu einem separaten Fenster zu wechseln. Liebe dieses Feature zu Tode in Dbshell.


verwende nur eine Tabelle => \ dt

wenn Schematabellen angezeigt werden sollen => \ dt +

Wenn Sie bestimmte Schematabellen sehen möchten => \ dt schema_name. *





postgresql