Successfully added
Informatik
by Patrik
Was macht TRUNCATE TABLE in SQL?
TRUNCATE TABLE einfach erklärt
Der SQL-Befehl TRUNCATE TABLE löscht alle Zeilen einer Tabelle auf einmal – schnell und effizient. Im Gegensatz zu DELETE, das jede Zeile einzeln entfernt, leert TRUNCATE die Tabelle, ohne ihre Struktur zu verändern.
Das bedeutet: Spalten, Datentypen, Indizes und Berechtigungen bleiben bestehen. Nur die Inhalte verschwinden.
Wann sollte man TRUNCATE verwenden?
TRUNCATE TABLE eignet sich, wenn
- du eine Tabelle komplett leeren möchtest,
- du keine WHERE-Bedingung brauchst,
- und Geschwindigkeit wichtig ist.
Beispiel:
Dieser Befehl entfernt alle Datensätze aus der Tabelle kunden – blitzschnell und mit minimalem Speicheraufwand.
Wichtige Unterschiede zu DELETE
| Aspekt | TRUNCATE TABLE |
DELETE FROM |
|---|---|---|
| Kann WHERE verwenden? | Nein | Ja |
| Geschwindigkeit | Sehr schnell | Langsamer |
| Rücksetzbar (Rollback möglich)? | Nur in Transaktion | Ja |
| Löst Trigger aus? | Meist nein | Ja |
| Setzt AUTO_INCREMENT zurück? | Ja (je nach DB) | Nein |
Wichtige Hinweise
TRUNCATEkann nicht verwendet werden, wenn andere Tabellen über Fremdschlüssel auf diese Tabelle verweisen.- In vielen Systemen gilt
TRUNCATEals DDL-Befehl (Data Definition Language), ähnlich wieCREATEoderDROP. - Eine gute Praxis ist,
TRUNCATEnur auf temporären oder Hilfstabellen zu verwenden, wenn du sicher bist, dass keine Daten benötigt werden.
SQL
Datenbanken
TRUNCATE
Grundlagen
Performance
Referenced in:
Comments