Erstellen Sie Tabelle in einem Schema Postgres

Erstellen Sie Tabelle in einem Schema Postgres

PostgreSQL ist eines der beliebtesten Objektrelationsdatenbanksysteme. Es ist eine kostenlose und open-Source. Es kann mit verschiedenen Datentypen funktionieren, die zuverlässig und sicher sind. Erfahren Sie mehr über die Funktionen von Postgresql.

In diesem Leitfaden erfahren wir mehr über das Erstellen von Tabellen in einem Schema in PostgreSQL.

Schemas in Postgresql

Eine PostgreSQL -Datenbank kann ein oder mehrere benannte Schemas enthalten, die jedes Schema enthält, das Tabellen enthält.

Der gleiche Objektname kann über mehrere Schemas ohne Konflikt hinweg zugewiesen werden. Beispielsweise ist das folgende Schema/Tabellenbaum gültig:

  • Schema_a
    • Tabelle 1
    • Tabelle 2
  • Schema_B
    • Tabelle 1
    • Tabelle 2

Sie können sich Schemas wie Verzeichnisse auf Betriebssystemebene vorstellen. Der Unterschied besteht darin, dass es keine verschachtelten Schemas geben kann. Erfahren Sie mehr über das Schema in der PostgreSQL-Dokumentation.

Es kann mehrere Gründe für die Implementierung der Schemas geben:

  • Mehrere Benutzer, die dieselbe Datenbank verwenden, ohne sich gegenseitig widersprühen zu können.
  • Bessere Organisation und Verwaltung von Datenbanken in logische Gruppen.
  • Apps von Drittanbietern können ihr einzigartiges Schema erstellen, ohne mit den vorhandenen Schemas oder anderen Objekten zu kollidieren.

Tabellen in PostgreSQL

Jede relationale Datenbank besteht aus mehreren zugehörigen Tabellen, die jeweils aus Zeilen und Spalten bestehen. PostgreSQL verfügt über mehrere integrierte Tabellen, die verschiedene Systeminformationen enthalten. Wir können jedoch auch neue Tabellen unter benutzerdefinierten Datenbanken und Schemas erstellen.

Voraussetzungen:

Um die in diesem Handbuch gezeigten Schritte auszuführen, benötigen Sie die folgenden Komponenten:

  • Ein richtig konfiguriertes Linux-System. Erfahren Sie mehr über die Installation von Ubuntu in VirtualBox.
  • Eine ordnungsgemäße Installation von PostgreSQL. Lesen Sie die Installation von Postgresql auf Ubuntu.
  • Zugriff auf einen PostgreSQL -Benutzer mit Nutzungsberechtigung für eine Datenbank.

Für den Zweck dieses Leitfadens werden wir verwenden Postgres Alle Aktionen in PostgreSQL ausführen.

Tische in einem Schema erstellen

Erstellen einer Demo -Datenbank

Wie bereits erwähnt, existieren Schemata unter einer Datenbank. Zu Demonstrationszwecken erstellen wir eine Dummy -Datenbank, um eine Störung einer vorhandenen Datenbank zu vermeiden.

Greifen Sie auf die PostgreSQL -Shell als Postgres:

$ sudo -i -u postgres psql

Erstellen Sie eine neue Datenbank Demo_DB:

$ Create Database Demo_DB;

Überprüfen Sie, ob die Datenbank erfolgreich erstellt wird:

$ \ l

Schließlich stellen Sie eine Verbindung zu der neu geschaffenen Datenbank her:

$ \ Connect Demo_DB;

Das öffentliche Schema

Jede neue Datenbank in PostgreSQL verfügt über ein Standardschema - öffentlich. Wenn Sie versuchen, ein Objekt zu erstellen, ohne den Namen des Schemas anzugeben, wird das öffentliche Schema standardmäßig ausgewählt.

Der folgende Befehl druckt das gesamte verfügbare Schema in der PostgreSQL -Datenbank:

$ \ dn

Alternativ können wir auch die folgende SQL -Abfrage verwenden:

$ Select * aus pg_catalog.pg_namespace;

Erstellen eines neuen Schemas

Um ein neues Schema unter einer bestimmten Datenbank zu erstellen, lautet die Befehlsstruktur wie folgt:

$ Create Schema;

Nach der Regel erstellen wir ein neues Schema Demo_schema:

$ Erstellen Schema Demo_schema;

Überprüfen Sie die Schemaliste zur Überprüfung:

$ \ dn

Erstellen einer Tabelle in einem Schema

Nachdem wir das Zielschema erstellt haben, können wir es mit Tabellen bevölkern.

Die Syntax zum Erstellen einer Tabelle lautet wie folgt:

TABELLE ERSTELLEN . (

)

Hier:

  • Schema: Dieses Feld gibt den Namen des Schemas an, in dem die Tabelle erstellt wird. Wenn kein Wert bereitgestellt wird, wird die Tabelle unter dem erstellt öffentlich Schema.

Zur Demonstration erstellen wir eine einfache Tabelle:

Erstellen Sie Table Demo_schema.Demo_Table (
Name char (64),
Id int nicht null
);

Hier:

  • Das Feld NAME wird angegeben, um eine Reihe von 64 Zeichen zu speichern.
  • Das Feld AUSWEIS Enthält die Ganzzahlwerte. Der Begriff "NICHT NULL" weist darauf hin, dass AUSWEIS kann nicht leer oder null sein.

Wir können die Existenz der Tabelle anhand der folgenden Abfrage überprüfen:

$ Select * von Demo_schema.Demo_Table;

Daten in die Tabelle einfügen

Mit der vorhandenen Tabelle können wir jetzt einige Werte einfügen:

Einfügen in Demo_Schema ein.Demo_table (Name, ID)
WERTE
('PQR', 45),
('Ijk', 99)
;

Überprüfen Sie den Inhalt der Tabelle:

$ Select * von Demo_schema.Demo_Table;

Schemamanagement

Schema -Berechtigungen

Mit Hilfe der Schema -Erlaubnis können wir verwalten, welche Rolle die Aktion auf einem bestimmten Schema ausführen kann. Von all den möglichen Privilegien unterstützen Schemata nur Erstellen und nutzen.

Um die Schema -Genehmigung für eine bestimmte Rolle zu aktualisieren, lautet die Kommandostruktur wie folgt:

$ Grant auf Schema an;

Um die Erlaubnis zur Schema für eine bestimmte Rolle zu widerrufen, lautet die Kommandostruktur wie folgt:

$ Revoke on Schema zu;

Überprüfen Sie die Änderung mit dem folgenden Befehl:

$ \ dn+

Schema -Eigenschaften verändern

Mit Hilfe der Schema ändern Aussage können wir die verschiedenen Eigenschaften eines Schemas ändern. Zum Beispiel: Besitz, Schema Name usw.

Verwenden Sie die folgende Abfrage, um den Namen des Schemas zu ändern:

$ Alter Schema umbenennen;

Verwenden Sie die folgende Abfrage, um das Eigentum an einem Schema zu ändern:

$ Alter Schema Besitzer zu;

Beachten Sie, dass der aktuelle Benutzer, um den Eigentum zu ändern ERSTELLEN Erlaubnis zum Schema.

Ein Schema löschen

Wenn ein Schema nicht mehr erforderlich ist, können wir es mit dem löschen TROPFEN Anfrage:

$ Drop Schema

Wenn das Schema ein Objekt enthält, brauchen wir die KASKADE Modifikator:

$ Drop Schema Cascade;

Tabellenverwaltung

Tischberechtigungen

Wie bei Schema wird auch jede Tabelle mit dem Erlaubnismanagement geliefert, um zu definieren, welche Aktion eine Rolle auf der Tabelle spielen kann.

Verwenden Sie den folgenden Befehl in PSQL, um die Berechtigungen einer Tabelle zu überprüfen:

$ \ dp

TABLE -Eigenschaften ändern

Mit Hilfe der Tabelle ändern Aussage können wir die zahlreichen Aspekte einer bereits bestehenden Tabelle ändern.

Um beispielsweise eine Spalte fallen zu lassen, sieht die Abfrage so aus:

$ Alter Table Drop -Spalte;

Um eine neue Spalte hinzuzufügen, können wir die folgende Abfrage verwenden:

$ Alter Tabelle Hinzufügenspalte;

Wir können auch die Komprimierung für eine bestimmte Spalte festlegen:

$ Alter Spalte Set -Komprimierung;

Löschen einer Tabelle

Um eine Tabelle aus einem Schema zu löschen, können wir die Drop -Tabelle -Abfrage verwenden:

$ Droptabelle;

Beachten Sie, dass im Gegensatz zu Schemas die Tropfentisch Abfrage erzeugt keinen Fehler, unabhängig davon, ob die Tabelle leer ist oder nicht.

Abschluss

In diesem Leitfaden haben wir gezeigt, wie die Tabellen in einem Schema in PostgreSQL erstellt werden können. Wir haben ein Dummy -Schema in einer Dummy -Datenbank erstellt und eine Tabelle innerhalb des Schemas erstellt. Dieser Leitfaden zeigt auch, wie die verschiedenen Eigenschaften von Schemas und Tabellen verwaltet werden können.

Für eine bessere Datenintegrität können Sie eine logische PostgreSQL -Replikation konfigurieren. Um die PostgreSQL -Datenbank gesund zu halten.

Weitere PostgreSQL-Guides finden Sie in der PostgreSQL-Unterkategorie.