PHP-Einfach.de
  • PHP Tutorial
  • MySQL Tutorial
  • Für Fortgeschrittene
  • Webhosting
  • Jobs
  • Forum

Daten löschen mittels DELETE

7. Dezember 2017
  1. Home
  2. »
  3. MySQL Tutorial
  4. »
  5. Daten löschen mittels DELETE

Das Löschen einzelner Datenbankeinträge ist sehr einfach möglich mittels der DELETE-Anweisung . Im Grunde reicht euch der folgende Code:

1
2
3
4
5
6
<?php
$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password');
$statement = $pdo->prepare("DELETE FROM tabelle WHERE spalte = ?");
$statement->execute(array('Wert für Spalte'));
?>

Hier könnt ihr wieder jede beliebige WHERE-Klausel verwenden (nähere Infos dazu im Artikel Komplexere Datenabfrage per SELECT). Möchtet ihr einen User mit einer gewissen ID löschen, so geht dies wie folgt:

1
2
3
4
5
6
<?php
$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password');
$statement = $pdo->prepare("DELETE FROM users WHERE id = ?");
$statement->execute(array(1)); //Löscht Benutzer mit ID 1
?>

Natürlich könnt ihr auch mehrere Bedingungen überprüfen und die Parameter auch benennen. Möchtet ihr alle 'Max Mustermann' aus der User-Tabelle löschen, so könnte euer Code wie folgt aussehen:

1
2
3
4
5
6
<?php
$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password');
$statement = $pdo->prepare("DELETE FROM users WHERE vorname = :vorname AND nachname = :nachname");
$statement->execute(array('vorname' => 'Max', 'nachname' => 'Mustermann')); //Löscht Benutzer mit Namen Max Mustermann
?>

Neben WHERE funktionieren auch andere Anweisungen, wie z.B. ORDER BY und LIMIT. Um die alphabetisch ersten 10 Personen aus eurer Tabelle zu löschen, könnt ihr folgende Anweisung verwenden:

1
DELETE FROM users ORDER BY vorname,nachname LIMIT 10

In den allermeisten Fällen reicht aber das Löschen über die eindeutige ID. Per DELETE wird stets die gesamte Datenbankzeile gelöscht. Wenn ihre eine einzelne Spalte löschen möchtet, so müsst ihr ein entsprechendes UPDATE-Statement verwenden und den Inhalt der Spalte leeren.

Euch sollte natürlich bewusst sein, dass sobald der DELETE-Befehl ausgeführt wurde, die Daten gelöscht sind und nicht so leicht wieder hergestellt werden können. Ein regelmäßiges Backup eurer Datenbank schützt euch von ungewolltem Datenverlust. Unser Artikel Datenbankbackup per PHP erklärt euch, wie ihr automatisiert eine Sicherung euer Datenbank erstellen könnt.

Autor: Nils Reimers
Zurück: Daten aktualisieren per UPDATE
Weiter: Gefundene Einträge zählen mittels COUNT

MySQL Tutorial

  • MySQL installieren und starten
  • phpMyAdmin
  • Verbindung aufbauen
  • Simple Datenabfrage
  • Komplexere Datenabfrage
  • Prepared Statements
  • Daten einfügen
  • Daten aktualisieren
  • Daten löschen
  • Gefundene Einträge zählen
  • DATE-Datenbankspalten
  • Datum- und Zeitfunktionen
  • MySQL Fehlermeldungen
  • Datenbankverbindung schließen
  • JOIN
  • Indizes
  • Normalformen
  • Fremdschlüssel
  • Übersicht SQL-Befehle
  • Crashkurs MySQL
  • Crashkurs MySQLi
  • Crashkurs PDO
Mit freundlicher Unterstützung von:
  • Stromvergleich bei Spar-Lotse.de
  • Casinopilot24.com
  • Online casino echtgeld.com
  • Decasinos.de
  • Privatkredit247.com
  • Neueonline-Casinos.com

Hoster – Geringste Ausfallzeit

  1. webgo Ø 11 Min.
  2. Mittwald Ø 12 Min.
  3. Linevast Ø 18 Min.
  4. 1&1 Ø 29 Min.
  5. dogado Ø 30 Min.
  6. checkdomain Ø 30 Min.
  7. Alfahosting Ø 35 Min.
  8. Host Europe Ø 35 Min.
  9. ONE.com Ø 40 Min.
  10. All-Inkl.com Ø 43 Min.
» Mehr erfahren

Impressum | Datenschutz | Auf PHP-Einfach.de werben

© PHP-Einfach.de 2003 - 2019

Um dich beim Lernen von PHP und MySQL zu unterstützen verwenden wir Cookies. OK Weitere Infos