MySQL - Tabelle leeren mit PHP
So entfernen Sie alle Einträge einer Tabelle, erhalten aber die Struktur
Wer bei MySQL mit Tabellen arbeitet, muss diese nicht nur befüllen, sondern auch hin und wieder verändern oder Einträge entfernen. Möchte man nun eine Tabelle einer Datenbank aus verschiedenen Gründen komplett leeren (zum Beispiel bei einer temporären Speicherung), jedoch die Struktur der MySQL-Tabelle erhalten, dann hat man hierfür grundsätzlich zwei Möglichkeiten. Sie können alle Einträge der Tabelle löschen oder die Tabelle auf den Ursprungszustand zurücksetzen.
Tabelle bei MySQL per DELETE leeren
Die einfachste Variante, alle Einträge oder nur bestimmte Einträge einer Tabelle zu entfernen, ist der DELETE
-Befehl von MySQL. Die Tabelle users
wird folgendermaßen komplett geleert:
DELETE FROM `users`
Möchte man hingegen nur bestimmte Benutzer aus der Tabelle entfernen, kann man noch die WHERE
-Klausel anfügen:
DELETE FROM `users` WHERE `age` < 18
Dieser Befehl würde dann alle Benutzer entfernen, deren Alter kleiner als 18 ist. Der DELETE
-Befehl hat jedoch einen Nachteil, da er die Tabelle nicht komplett auf seine anfängliche Struktur zurücksetzt. Daher ist es im Idealfall immer ratsam, TRUNCATE
zum Leeren von Tabellen zu verwenden.
Tabelle mit TRUNCATE leeren
Wenn beispielsweise die Spalte id
einer Tabelle auf auto_increment
gesetzt wurde, dann sollten Sie TRUNCATE
einsetzen, um eine MySQL-Tabelle zu leeren, da dieser Wert, der sich mit jedem Eintrag selbst erhöht, auf diese Weise ebenfalls zurückgesetzt wird:
TRUNCATE TABLE `users`
Technisch gesehen wird TRUNCATE
zunächst die betreffende Tabelle löschen (DROP
-Befehl) und anschließend gleich wieder erstellen (CREATE
), was einen gewissen Geschwindigkeitsvorteil gegenüber DELETE
mit sich bringt. Vor allem bei größeren Tabellen kann sich dies bemerkbar machen. Zudem wird, wie bereits erwähnt, jedes auto_increment
in der jeweiligen Tabelle zurückgesetzt.
MySQL-Tabelle mit PHP leeren
Verpacken lässt sich dieser MySQL-Befehl relativ einfach in PHP. Der folgende Codeschnipsel leert in PHP eine Tabelle mittels TRUNCATE
:
$db_con = mysqli_connect("localhost", "bn", "pw", "db");
$query = "TRUNCATE TABLE users";
$res = mysqli_query($db_con, $query);
mysqli_close($db_con);
Diesen Tipp bewerten:
Beliebt und gern gelesen:
![](../../images/t/w160_pause-im-buero.jpg)
An dieser Stelle erhalten Workhalics und Selbstständige ein paar Tipps, um die richtige Work-Life-Balance zu finden und Stress zu minimieren.
![](../../images/t/w160_lachsfilet-auf-eis.jpg)
Wer mit Leidenschaft kocht, verwendet möglichst naturbelassene Zutaten. Darunter gehören auch frische und ganze Fische, die man jedoch filetieren muss. Wie man dies richtig anstellt, erfahren Sie hier.
![](../../images/t/w160_gebrauchte-buecher.jpg)
Das World Wide Web ist eine ideale Plattform, um Buchverkäufer und - käufer zusammenzubringen. Erfahren Sie hier, wie Sie gebrauchte Bücher übers Internet verkaufen können.
![](../../images/t/w160_spuelmaschine-geruch.jpg)
Spülmaschinen sollen den alltäglichen Abwasch erleichtern, doch manchmal verbreiten sie unangenehme Gerüche. Regelmäßige Siebreinigung ist nur eine Möglichkeit, um Spülmaschinengeruch zu verhindern.
![](../../images/t/w160_waermeflasche-blaehungen.jpg)
Blähungen sind wohl jedem bekannt. Die Luft im Magen-Darm-Trakt entsteht unter anderem durch Fehlernährung. Erfahren Sie, wie Sie auf natürliche Weise Blähungen vorbeugen können.