English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Tutorial lernen Sie, wie Sie mit PHP Datensätze aus einer MySQL-Tabelle löschen können.
Wie beim Einfügen von Aufzeichnungen in den Tisch können Sie SQL verwenden DELETEDer Befehl löscht Zeilen aus dem Tisch. Er wird normalerweise mit der WHERE-Klausel kombiniert, um nur die Zeilen zu löschen, die bestimmten Bedingungen oder Bedingungen entsprechen.
Die grundlegende Syntax des DELETE-Befehls kann wie folgt gegeben werden:
DELETE FROM table_name WHERE column_name=some_value
Lassen Sie uns eine SQL-Anfrage mit dem DELETE-Befehl und WHERE-Klausel durchführen, um die Tabellenzeilen zu löschen, und führen Sie diese Anfrage durch, indem Sie sie an die PHP mysqli_query() -Funktion übergeben. Schauen Sie sich die following persons-Tabelle in der demo-Datenbank an:
+----+------------+-----------+----------------------+ | id | first_name | last_name | email | +----+------------+-----------+----------------------+ | 1 | Peter | Parker | [email protected] | | 2 | John | Rambo | [email protected] | | 3 | Clark | Kent | [email protected] | | 4 | John | Carter | [email protected] | | 5 | Harry | Potter | [email protected] | +----+------------+-----------+----------------------+
Das folgende Beispiel des PHP-Code wird Datensätze aus der Tabelle persons löschenfirst_nameDokument von Personen, die John heißen.
<?php /* Versuchen, eine Verbindung zum MySQL-Server herzustellen. Angenommen, Sie führen MySQL aus. Server mit Standardeinstellungen (Benutzer "root" ohne Passwort) */ $link = mysqli_connect("localhost", "root", "", "demo"); //Verbindung überprüfen if($link === false){ die("Fehler: Verbindung nicht möglich. " . mysqli_connect_error()); } //Versuchen, das Löschen auszuführen $sql = "DELETE FROM persons WHERE first_name='John'"; if(mysqli_query($link, $sql)){ echo "Der Eintrag wurde erfolgreich gelöscht."; } else{ echo "Fehler: Die Ausführung von $sql ist nicht möglich. " . mysqli_error($link); } //Verbinung schließen mysqli_close($link); ?>
<?php /* Versuchen, eine Verbindung zum MySQL-Server herzustellen. Angenommen, Sie führen MySQL aus. Server mit Standardeinstellungen (Benutzer "root" ohne Passwort) */ $mysqli = new mysqli("localhost", "root", "", "demo"); //Verbindung überprüfen if($mysqli === false){ die("Fehler: Verbindung fehlgeschlagen. ". $mysqli->connect_error); } //Versuchen, das Löschen auszuführen $sql = "DELETE FROM persons WHERE first_name='John'"; if($mysqli->query($sql) === true){ echo "Der Eintrag wurde erfolgreich gelöscht."; } else{ echo "Fehler: Das Ausführen von $sql fehlgeschlagen. ". $mysqli->error; } //Verbinung schließen $mysqli->close(); ?>
<?php /* Versuchen, eine Verbindung zum MySQL-Server herzustellen. Angenommen, Sie führen MySQL aus. Server mit Standardeinstellungen (Benutzer "root" ohne Passwort)*/ try{ $pdo = new PDO("mysql:host=localhost;dbname=demo", "root", ""); //PDO-Fehlermodus auf Ausnahme gesetzt $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $e){ die("Fehler: Verbindung fehlgeschlagen. ". $e->getMessage()); } //Versuchen, die Abfrageausführung zu aktualisieren try{ $sql = "DELETE FROM persons WHERE first_name='John'"; $pdo->exec($sql); echo "Der Eintrag wurde erfolgreich gelöscht."; } catch(PDOException $e){ die("Fehler: Das Ausführen von $sql fehlgeschlagen. ". $e->getMessage()); } //Verbinung schließen unset($pdo); ?>
Nach dem Löschen:personsDie Tabelle wird wie folgt aussehen:
+----+------------+-----------+----------------------+ | id | first_name | last_name | email | +----+------------+-----------+----------------------+ | 1 | Peter | Parker | [email protected] | | 3 | Clark | Kent | [email protected] | | 5 | Harry | Potter | [email protected] | +----+------------+-----------+----------------------+
Wie Sie sehen können, wurde der Eintrag erfolgreich aus der Tabelle persons gelöscht.
Warnung:Die WHERE-Klausel der DELETE-Anweisung bestimmt, welche Zeilen gelöscht werden sollen. Wird die WHERE-Klausel weggelassen, werden alle Zeilen gelöscht.