Zusammenfassung: In diesem Tutorial erfahren Sie, wie Sie mit der Anweisung MySQL DROP TABLE
eine Tabelle aus der Datenbank löschen.
MySQL DROP TABLE statement Syntax
Um vorhandene Tabellen zu entfernen, verwenden Sie die MySQLDROP TABLE
Anweisung.
Hier ist die grundlegende Syntax derDROP TABLE
Anweisung:
Code language: SQL (Structured Query Language) (sql)
DieDROP TABLE
Anweisung entfernt eine Tabelle und ihre Daten dauerhaft aus der Datenbank., In MySQL können Sie auch mehrere Tabellen mit einer einzigen DROP TABLE
Anweisung entfernen, wobei jede Tabelle durch ein Komma (,) getrennt ist.
Mit der Option TEMPORARY
können Sie nur temporäre Tabellen entfernen. Es stellt sicher, dass Sie nicht versehentlich nicht temporäre Tabellen entfernen.
DieIF EXISTS
Option löscht eine Tabelle nur bedingt, wenn sie existiert. Wenn Sie eine nicht vorhandene Tabelle mit der Option IF EXISTS
löschen, generiert MySQL eine NOTIZ, die mit der Anweisung SHOW WARNINGS
abgerufen werden kann.,
Beachten Sie, dass die DROP TABLE
Anweisung nur Tabellen löscht. Es werden keine spezifischen Benutzerrechte entfernt, die den Tabellen zugeordnet sind. Wenn Sie daher eine Tabelle mit demselben Namen wie die gelöschte Tabelle erstellen, wendet MySQL die vorhandenen Berechtigungen auf die neue Tabelle an, was ein Sicherheitsrisiko darstellen kann.
Die Optionen RESTRICT
und CASCADE
sind für zukünftige MySQL-Versionen reserviert.
Um die DROP TABLE
– Anweisung auszuführen, müssen Sie über DROP
– Berechtigungen für die Tabelle verfügen, die Sie entfernen möchten.,
MySQL DROP TABLE-Beispiele
nehmen wir einige Beispiele für die Verwendung der DROP TABLE
– Anweisung.,3b2a0bf834″>
Option in der DROP TABLE
Anweisung:
Code language: SQL (Structured Query Language) (sql)
MySQL gab stattdessen eine Warnung aus:
Code language: SQL (Structured Query Language) (sql)
Um die Warnung anzuzeigen, können Sie die SHOW WARNINGS
Anweisung:
Code language: SQL (Structured Query Language) (sql)
MySQL DROP TABLE based on a pattern
Angenommen, Sie haben viele Tabellen, deren Namen mit test
in Ihrer Datenbank beginnen und Sie möchten alle mit einer einzigen DROP TABLE
Anweisung.,
Leider verfügt MySQL nicht über die – Anweisung, mit der Tabellen basierend auf dem Mustervergleich entfernt werden können:
Code language: JavaScript (javascript)
Es gibt jedoch einige Problemumgehungen. Wir werden einen von ihnen hier als Referenz besprechen.
Erstellen Sie zunächst drei Tabellen test1
,test2
, test4
zur Demonstration:
Code language: SQL (Structured Query Language) (sql)
Angenommen, Sie möchten alle test*
Tabellen entfernen.,
Zweitens deklarieren Sie zwei Variablen, die das Datenbankschema akzeptieren, und ein Muster, mit dem die Tabellen übereinstimmen sollen:
Code language: CSS (css)
Drittens erstellen Sie eine dynamische DROP TABLE
Anweisung:
Grundsätzlich weist die Abfrage MySQL an, zur information_schema
Tabelle zu gehen, die Informationen zu allen Tabellen in allen Datenbanken enthält, und alle Tabellen tabellen in der Datenbank @schema
( classicmodels
), die dem Muster @pattern
( test%
) mit dem Präfix DROP TABLE
entsprechen ., Die Funktion GROUP_CONCAT
erstellt eine durch Kommas getrennte Tabellenliste.
Viertens, display die dynamische SQL zu überprüfen, ob es funktioniert richtig:
Code language: SQL (Structured Query Language) (sql)
Wie sie sehen können, die ausgabe ist, was wir erwartet.
Fünftens führen Sie die Anweisung mit einer vorbereiteten Anweisung aus, wie in der folgenden Abfrage gezeigt:
Code language: SQL (Structured Query Language) (sql)
Alles zusammensetzen.,
Wenn Sie also mehrere Tabellen mit einem bestimmten Muster in einer Datenbank löschen möchten, verwenden Sie einfach das obige Skript, um Zeit zu sparen. Sie müssen lediglich das Muster und das Datenbankschema in den Variablen @pattern
und @schema
ersetzen. Wenn Sie sich häufig mit dieser Aufgabe befassen müssen, können Sie eine gespeicherte Prozedur basierend auf dem Skript entwickeln und diese gespeicherte Prozedur wiederverwenden.
In diesem Tutorial haben Sie gelernt, wie Sie mit der Anweisung MySQL DROP TABLE
vorhandene Tabellen aus einer Datenbank entfernen.
- War dieses tutorial hilfreich?,
- YesNo
Schreibe einen Kommentar