PostgreSQL Temporäre Tabellen

PostgreSQL Temporäre Tabellen

PostgreSQL verfügt über zuverlässige Datenbankfunktionen für den Umgang mit verschiedenen Transaktionen. Zum Beispiel spart seine temporäre Tabelle Daten pro bestimmte Sitzung. Für eine bestimmte Sitzung gibt.

In diesem Beitrag werden Sie verstehen, wie temporäre Tabellen funktionieren. Wir erstellen eine temporäre Tabelle und versuchen dann, von einer anderen Sitzung aus darauf zugreifen zu können.

Arbeiten mit temporären Tabellen in PostgreSQL

Bevor Sie mit einer temporären Tabelle in Postgresql arbeiten, lassen Sie uns einige Fakten verstehen.

  1. Die temporäre Tabelle ist nur in einer bestimmten Sitzung sichtbar. Andere Transaktionen oder Datenbanken können nicht auf eine bestimmte Transaktion zugreifen.
  2. Sie können eine temporäre Tabelle mit demselben Namen wie eine dauerhafte Tabelle in derselben Datenbank haben.
  3. Wenn eine temporäre Tabelle denselben Namen wie eine dauerhafte Tabelle teilt, kann auf die dauerhafte Tabelle erst zugegriffen werden, wenn die temporäre Tabelle aus der Datenbank oder Sitzung fallen gelassen wird.

Hier ist die Syntax zum Erstellen einer temporären Tabelle in PostgreSQL. Du kannst den ... benutzen VORÜBERGEHEND oder Temperatur Schlüsselwort, um es zu erstellen.

# Temporary Table Table erstellen (column_name, DataType);


oder

# TEMP TABLE TABELLE_NAME CREATE (column_name, DataType);


In diesem Tutorial erstellen wir eine Datenbank, erstellen eine temporäre Tabelle und eine dauerhafte Tabelle. Versuchen Sie dann, aus einer anderen Sitzung auf die gleiche temporäre Tabelle zuzugreifen, um zu verstehen, wie eine temporäre Tabelle funktioniert.

Greifen Sie auf Ihre PostgreSQL -Konsole zu und erstellen Sie eine Datenbank. Lassen Sie uns unsere nennen LinuxHint.

# Datenbank linuxHint1 erstellen;



Sie erhalten eine Bestätigung, dass Ihre Datenbank erfolgreich erstellt wurde. Stellen Sie als Nächstes eine Verbindung zur erstellten Datenbank her.

# \ c LinuxHint1;



Erstellen Sie eine dauerhafte Tabelle. Lassen Sie es uns nennen Namen.

# Tabellennamen erstellen (fname varchar (100), Alter int);



Lassen Sie uns mit unserer erstellten dauerhaften Tabelle eine temporäre Tabelle mit demselben Namen, aber unterschiedlichen Spalten erstellen.

# Temporäre Tabellennamen erstellen (Nachname varchar (100));



Wir können überprüfen, ob unsere Datenbank die beiden erstellten Tabellen mit dem enthält \ dt Befehl.


Sie werden feststellen, dass nur eine Tabelle aufgeführt ist, da die temporäre Tabelle nicht aufgeführt ist. Wenn wir jedoch den Inhalt der jeweiligen Tabelle auflisten, wird der Inhalt der temporären Tabelle angezeigt. Der permanente Tisch wird „zum Schweigen gebracht“, bis der temporäre Tisch fallen gelassen wird.


Nehmen wir an, Sie öffnen eine weitere PostgreSQL -Sitzung und stellen eine Verbindung zur erstellten Datenbank her. Wenn Sie versuchen, auf die temporäre Tabelle zuzugreifen, besteht nicht vorhanden. Stattdessen wird die permanente Tabelle abgerufen, da die temporäre Tabelle nur in der Sitzung vorhanden ist, in der sie erstellt wurde.


In der Ausgabe erhalten wir den Inhalt der dauerhaften Tabelle wider, was wir bekommen haben, als wir denselben Befehl in der Sitzung mit der temporären Tabelle enthält.

Wenn Sie jedoch die aktuelle Sitzung beenden, kommen Sie später zurück, die temporäre Tabelle existiert nicht.

Versuchen Sie aufzuhören, indem Sie das ausführen \Q Befehl, dann versuchen Sie, auf die temporäre Tabelle zuzugreifen. Es wird einen Fehler zurückgeben.

Einfügen von Werten in eine temporäre Tabelle

Sie können Werte in eine temporäre Tabelle auf die gleiche Weise einfügen, wie Sie sie in eine dauerhafte Tabelle einfügen.


Nach dem Einsetzen können Sie bestätigen, dass die temporäre Tabelle die eingefügten Werte wie erwartet enthält.

Abwerfen eines temporären Tisches

Du kannst den ... benutzen tropfen Befehl Wenn Sie die temporäre Tabelle löschen möchten, ohne darauf zu warten, dass sie automatisch gelöscht wird, wenn die Sitzung abläuft.

Abschluss

Temporäre Tabellen sind Tabellen, die in Postgresql mit einer kurzen Lebensdauer erstellt wurden. Die Tabellen sind in der aktuellen Sitzung nur sichtbar. Sobald Sie die Sitzung beenden, wird die Tabelle automatisch gelöscht. Wenn Sie jedoch eine andere Sitzung öffnen und versuchen, auf die temporäre Tabelle zuzugreifen, gibt dies einen Fehler zurück. Wenn Sie über eine vorübergehende und dauerhafte Tabelle verfügen, die denselben Namen freigibt, können Sie nicht auf die dauerhafte Tabelle zugreifen, bis Sie die temporäre Tabelle fallen lassen.