Erstellen einer temporären Tabelle
In diesem Schritt lernen Sie, wie Sie eine temporäre Tabelle in SQLite erstellen. Temporäre Tabellen sind nützlich, um Zwischenergebnisse bei komplexen Abfragen zu speichern oder um Daten zu halten, die nur für kurze Zeit benötigt werden. Sie werden automatisch gelöscht, wenn die Datenbankverbindung geschlossen wird.
Öffnen Sie zunächst Ihr Terminal in der LabEx VM. Ihr Standardpfad ist /home/labex/project
.
Lassen Sie uns nun eine SQLite-Datenbank namens employees.db
erstellen. Führen Sie den folgenden Befehl aus, um die Datenbankdatei zu erstellen und das SQLite-Befehlszeilentool zu öffnen:
sqlite3 employees.db
Sie sehen eine Eingabeaufforderung, die anzeigt, dass Sie sich jetzt in der SQLite-Shell befinden:
SQLite version 3.x.x
Enter ".help" for usage hints.
sqlite>
Um eine temporäre Tabelle zu erstellen, verwenden Sie die CREATE TEMP TABLE
-Anweisung. Die Syntax ähnelt der Erstellung einer regulären Tabelle:
CREATE TEMP TABLE table_name (
column1 datatype,
column2 datatype,
...
);
Lassen Sie uns eine temporäre Tabelle namens temp_employees
erstellen, um Mitarbeiterinformationen zu speichern. Geben Sie den folgenden SQL-Befehl an der sqlite>
-Eingabeaufforderung ein und drücken Sie die Eingabetaste:
CREATE TEMP TABLE temp_employees (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT,
department TEXT
);
Dieser Befehl erstellt eine temporäre Tabelle namens temp_employees
mit drei Spalten: id
(ein ganzzahliger Primärschlüssel, der automatisch inkrementiert wird), name
(Text) und department
(Text).
CREATE TEMP TABLE temp_employees
: Diese SQL-Anweisung erstellt eine temporäre Tabelle namens temp_employees
. Das Schlüsselwort TEMP
gibt an, dass diese Tabelle temporär ist und automatisch gelöscht wird, wenn die Datenbankverbindung geschlossen wird.
id INTEGER PRIMARY KEY AUTOINCREMENT
: Dies definiert eine Spalte namens id
als Integer (ganze Zahl), legt sie als Primärschlüssel (primary key) für die Tabelle fest und konfiguriert sie so, dass sie sich mit jeder neuen eingefügten Zeile automatisch erhöht (auto increment).
name TEXT
: Dies definiert eine Spalte namens name
als Textfeld, um Mitarbeiternamen zu speichern.
department TEXT
: Dies definiert eine Spalte namens department
als Textfeld, um die Abteilung zu speichern, zu der jeder Mitarbeiter gehört.