DROP DATABASE
Datenbanken & Tabellen
Mit DROP DATABASE löschst du eine komplette Datenbank – samt allen Tabellen, Daten, Indizes und Views. Es bleibt nichts übrig. Dieser Befehl ist mächtig und gefährlich zugleich.
Warnung
DROP DATABASE kann nicht rückgängig gemacht werden. Es gibt kein „Undo“. Sind die Daten erst gelöscht, hilft nur noch ein vorher angelegtes Backup. Führe diesen Befehl niemals leichtfertig auf einer Produktivdatenbank aus.
Syntax
DROP DATABASE datenbankname;
Beispiel
So entfernst du unsere Beispieldatenbank shop mit allen Tabellen Kunden, Produkte und Bestellungen:
DROP DATABASE shop;
Nur löschen, wenn vorhanden
Existiert die Datenbank nicht, wirft DROP DATABASE einen Fehler. Mit einer Zusatzbedingung vermeidest du das (MySQL und PostgreSQL):
DROP DATABASE IF EXISTS shop;
Was passiert mit den Tabellen, wenn du DROP DATABASE shop; ausführst?
Stolperfalle
In PostgreSQL kannst du eine Datenbank nicht löschen, solange noch Verbindungen darauf bestehen – auch deine eigene zählt. Wechsle vorher in eine andere Datenbank (z. B. \c postgres) und versuche es erneut. Erstelle außerdem vor jedem DROP ein Backup, etwa mit mysqldump oder pg_dump (siehe Lektion BACKUP DATABASE).