Wie liste ich alle Schemas in PostgreSQL auf?

Wie liste ich alle Schemas in PostgreSQL auf?
PostgreSQL ist eine rationale und zuverlässige Datenbank. Viele Funktionen von Postgresql unterscheiden es von anderen Datenbanken. PostgreSQL -Schema ist eine Eigenschaft, mit der der Benutzer die Objekte in der aktuellen Datenbank verwalten und organisieren und in logischen Gruppen verwaltet werden können. Die derzeit vorhandenen Schemata werden auch in PSQL und Pgadmin angesehen. Um alle Schemata in PostgreSQL einzubeziehen, gibt es viele Ansätze. Wir haben hauptsächlich von ihnen verwendet, um in diesem Artikel zu erklären. Um dieses Dilemma zu verstehen, müssen Sie einige Voraussetzungen für Schritte wie:

Installieren Sie PostgreSQL in Ihrem System und konfigurieren Sie es. Bestätigen Sie nach einer erfolgreichen Installation und der Konfiguration von PostgreSQL diese, indem Sie ihre Version auf der PSQL überprüfen. Wenn Sie die Datenbank installiert haben, können Sie sie jetzt verwenden, da Sie über die Berechtigungen verfügen, um auf die darin enthaltenen Funktionen zuzugreifen. Wenn Sie Kenntnisse über Datenbanken haben, ist es für Sie günstig, die Schemas zu verstehen. Öffnen Sie nun PSQL und wenden Sie das Kennwort für den Benutzer für die Serverkonnektivität an.

Die erste Methode zeigt die Verwendung von „\ dn“ im PSQL -Terminal. Diese Methode zeigt nicht alle Namen der Schemas an. Es zeigt den Eigentümer der Schemas und deren Beschreibung, die entweder öffentlich oder vorübergehend erstellt wurden.

>> \ dn;

Diese Ausgabe zeigt, dass das Schema öffentlich ist und der Eigentümer des Schemas „Postgres“ ist.

Die zweite Methode ist die Verwendung der Anweisung "Auswählen" im Befehl. Diese Abfrage wird verwendet, um alle Namen des derzeit in PostgreSQL vorhandenen Schemas anzuzeigen. Diese Abfrage holt den Namen des Schemas aus der Hauptdatenspeicherung aller Schemas.

Diese Abfrage hilft bei der Anzeige aller Schemas. Jetzt sind hier 4 Schemata vorhanden.

Wenn Sie bereit sind, über das Schema der temporären Tabelle zu wissen, sollte hier eine Sache erwähnt werden, dass wir kein separates Schema für die temporäre Tabelle erstellen. Wir können es mit dem folgenden Befehl anzeigen

>> \ d;

Die resultierende zeigen die Namen von Tabellen mit dem Schema. Für die Beziehungsbücher ist das Schema öffentlich, was bedeutet, dass es sich um eine dauerhaft erstellte Tabelle handelt. Und für Tabelle "Tabelle1" wird es in pg_temp_10 gespeichert, was bedeutet, dass die Tabelle vorübergehend ist. Alle temporären Tabellen werden im Schema „PG_Temp_10“ gespeichert.

Eine andere Möglichkeit besteht darin, das Schema mit IDs und Rollen anzuzeigen, die dem Schema zugewiesen wurden. "Join" wird verwendet, um hier zwei Tabellen zu verknüpfen. Diese Verbindung erfolgt an dem Punkt, an dem die System -ID der Eigentümer -ID entspricht.

>> Wählen Sie s.nspname als schema_table, s.oid als id_schema, u.usename als Rolle aus pg_catalog.PG_NameSpace S join Pg_Catalog.pg_user u auf u.useySid = s.NSPOWER -Bestellung von schema_table;

Alle Schemata werden angezeigt, indem die auf sie angewendeten Rollen angezeigt werden, nämlich die "Postgres". Wenn Sie den Eigentümer ändern möchten, kann dies erfolgen, indem Sie einen neuen Benutzer erstellen und ihm alle Berechtigungen gewähren.

Eine andere Möglichkeit, das Schema einzubeziehen, kann erhalten werden, indem eine bedingte Anweisung angewendet wird, bei der der Schema -Name nicht in allen anderen Schemas wie PG_CATALOG usw. vorhanden sein sollte., Der Name, der übrig bleibt, wird also in der Ausgabe erwähnt.

Das Schema, das zurückgelassen wurde, ist also "ABC". Die Ausgabe zeigt auch die Rolle und ID_Schema. Einige sind benutzerdefinierte Tabellen. Diese Tabellen sind im „öffentlichen“ Schema aufgeführt.

Um alle vom Benutzer erstellten Tabellen im Schema anzuzeigen, verwenden wir hier eine Auswahlanweisung und "Wo" -Klausel, in der die Bedingung nicht in "pg_catalog" und "Information_Schema" überprüft wurde. Da die öffentlich erstellte Datenbank „ABC“ ist, ist sie hier nicht enthalten. In diesem Befehl werden auch andere Funktionen wie Zeilensicherheit und Tablespace angezeigt, aber jetzt sind diese nicht unser Anliegen.

Verwenden Sie den folgenden einfachen Befehl, um den Namen des aktuellen Schemas anzuzeigen.

>> Wählen Sie current_schema ();

Dies zeigt, dass das aktuelle Schema „öffentlich“ ist.

Um nach dem Eigentümer zu suchen oder die Rollen zu erwähnen, die das Schema steuern, verwenden wir einen Suchpfad, um das aktuelle Schema mit dem Namen des Besitzers anzuzeigen.

>> such_path anzeigen;

Wenn Sie wissen möchten, wie das neue Schema erstellt wird, ist es recht einfach.

>> Schema neu erstellen;

Nachdem das neue Schema erstellt wurde, stellen Sie nun den Weg zum neu erstellten Schema fest. Dies erfolgt durch die Zuweisung des Schemaswegs der Öffentlichkeit dem neuen Schema.

>> setze such_path auf neu, öffentlich;

Überprüfen Sie nun die Arbeit des Schemas, indem Sie eine neue Tabelle "N_TB" erstellen

>> Tabelle n_tb erstellen (ID Integer, Name Varchar (20));

Um die Daten aus der neuen Tabelle auszuwählen, die Sie erstellt haben, verwenden wir die Auswahlanweisung. Sie müssen mit der Verwendung von Auswahlanweisungen direkt auf der Tabelle vertraut sein. Diese Tabelle kann jedoch mit dem Namen des Schemas zugegriffen werden.

>> aus neu auswählen.n_tb;

Übertragen Sie nun alle Privilegien vom neuen Schema auf die Öffentlichkeit zurück.

>> setze such_path in die publikum;

Wir möchten die Anweisung "Erstellen" an das neue Schema mit dem Benutzernamen zulassen. Sie können auch alle anderen Aussagen verwenden, auf die Sie die Berechtigungen anwenden möchten.

>> Grant Create on Schema Neu in Postgres;

Nachdem Sie an dem Schema gearbeitet haben, benötigen wir, wenn Sie es aus der Datenbank entfernen möchten, einen „Drop“ -Befehl. Wenn Sie den Befehl „Drop“ direkt im Schema verwenden, werden einen Fehler angezeigt, da wir kein leeres Schema haben.

>> Drop -Schema neu;

In diesem Schema ist eine Beziehung vorhanden. Wir müssen alle Inhalte entfernen, um alle Spuren des Schemas zu entfernen

>> Drop Schema Neue Kaskade;

Via pgadmin

Öffnen Sie das Dashboard "Pgadmin". Machen Sie eine Verbindung mit dem Server, indem Sie das Kennwort bereitstellen.

Erstens, bevor wir die Anfragen anwenden, werden wir das Schema zeigen, das wir kürzlich erstellt haben. Bewegen Sie sich zur linken Seitenleiste des Armaturenbretts. Erweitern Sie die Datenbank "Postgres". Erweitern Sie die Option „Schemas“. Wählen Sie nun das neu erstellte Schema "neu" aus.

Im „neuen“ Schema werden Sie hier viele Optionen sehen. Wählen Sie nun die Tabellen aus und erweitern Sie sie. Sie werden die "N_TB" sehen, die wir erstellen.

Wie wir bereits beschrieben haben, gibt es zwei Typen: benutzerdefiniert und die anderen sind Systemschemata. Wenn wir die Datenbank erweitern, kommen wir mit beiden Schemata aus. Um die Systemschemata zu sehen und dann die Option von Katalogen weiter zu erweitern. Diese Liste von Schemata ist das Systemschema. Erweitern Sie die Schemasoptionen für die Benutzerschemas. Derjenige, der im folgenden Bild als „grün“ markiert ist.

Um ein neues Schema in Pgadmin zu erstellen, klicken Sie auf die Schemas, wählen Sie die erste Option "Erstellen" und wählen Sie erneut "Schema" aus.

Ein Dialogfeld wird angezeigt. Füllen Sie die Details aus.

Abschluss

"Wie mache ich alle Achemas in PostgreSQL", bietet uns die Lösung, um die Liste der aktuell in gebrauchten Schemas zu finden. Die Informationen zu den vorliegenden Schemata und zum Verfahren zur Erstellung neuer Schemas werden in diesem Artikel beschrieben. Das Dashboard ermöglicht es dem Benutzer, nach der einfachen „GUI“ -Methode ein Schema zu erstellen. Ich hoffe, dieser Artikel wird der beste Leitfaden für Ihre zukünftige Perspektive sein.