ist ein DDL-Befehl (Data Definition Language) in SQL, der zum Entfernen oder Löschen einer Tabelle und der zugehörigen Daten aus einer Datenbank verwendet wird. Die
Optionen geben an, wie die Datenbank mit zugehörigen Daten oder Einschränkungen umgehen soll, wenn die Tabelle gelöscht wird.
CASCADE;
„
- Wirkung:
– Löscht die angegebene Tabelle zusammen mit allen ihren Daten und allen zugehörigen Objekten, die davon abhängen.
- Wenn die gelöschte Tabelle Fremdschlüsseleinschränkungen aufweist, die auf andere Tabellen verweisen, wird die CASCADE Mit dieser Option werden die zugehörigen Zeilen in den referenzierten Tabellen automatisch gelöscht.
- Wenn die gelöschte Tabelle über untergeordnete Tabellen mit Fremdschlüsseleinschränkungen verfügt, die auf sie verweisen, gilt in ähnlicher Weise die CASCADE Mit dieser Option werden auch diese untergeordneten Tabellen gelöscht.
Beispiel:
„
DROP TABLE Kunden CASCADE;
„
Dieser Befehl löscht die Tabelle „Kunden“ und alle darin enthaltenen Daten. Darüber hinaus werden auch alle Zeilen in anderen Tabellen gelöscht, die Fremdschlüsseleinschränkungen haben, die auf die Tabelle „customers“ verweisen.
2. DROP TABLE mit RESTRICT:
- Syntax:
„
DROP TABLE
RESTRICT;
„
- Wirkung:
– Löscht die angegebene Tabelle, verhindert jedoch den Vorgang, wenn verwandte Objekte (z. B. Fremdschlüsseleinschränkungen) vorhanden sind, die vom Löschen betroffen wären.
- Im Gegensatz zu CASCADE , das EINSCHRÄNKEN Mit dieser Option werden zugehörige Daten oder Objekte nicht automatisch gelöscht.
- Wenn Abhängigkeiten oder Fremdschlüsseleinschränkungen das Löschen der Tabelle verhindern, wird eine Fehlermeldung generiert und der Vorgang schlägt fehl.
Beispiel:
„
DROP TABLE-Kunden RESTRICT;
„
Wenn es andere Tabellen mit Fremdschlüsseleinschränkungen gibt, die auf die Tabelle „customers“ verweisen, schlägt dieser Befehl fehl und gibt eine Fehlermeldung zurück. Um den Befehl erfolgreich auszuführen, müssen die Fremdschlüsseleinschränkungen entfernt oder geändert werden, bevor versucht wird, die Tabelle „customers“ zu löschen.
Die Wahl zwischen CASCADE und EINSCHRÄNKEN hängt vom spezifischen Datenbankschema und dem gewünschten Verhalten ab. KASKADE ist nützlich, wenn Sie eine Tabelle und alle damit verbundenen Daten schnell löschen möchten, während Sie RESTRICT verwenden stellt sicher, dass es aufgrund von Fremdschlüsselbeziehungen nicht zu unbeabsichtigten Datenverlusten kommt.