Drei Möglichkeiten zum Löschen einer Tabelle in MySQL (Zusammenfassung)

Drei Möglichkeiten zum Löschen einer Tabelle in MySQL (Zusammenfassung)

Drop-Tabelle

Drop löscht Tabelleninformationen direkt, was am schnellsten ist, aber Daten können nicht abgerufen werden

So löschen Sie beispielsweise die Benutzertabelle:

Tabellenbenutzer löschen;

abschneiden (Tabelle)

truncate löscht Tabellendaten, aber nicht deren Struktur. Es ist das zweitschnellste, kann aber nicht mit where verwendet werden.

So löschen Sie beispielsweise die Benutzertabelle:

Tabelle vom Benutzer abschneiden;

löschen von

delete löscht die Daten in der Tabelle, ohne die Tabellenstruktur zu löschen. Dies ist die langsamste Methode, kann aber zusammen mit where verwendet werden, um die angegebenen Zeilen zu löschen.

Löschen Sie beispielsweise alle Daten in der Benutzertabelle

vom Benutzer löschen;

Löschen Sie den angegebenen Datensatz in der Benutzertabelle

Löschen vom Benutzer, bei dem Benutzer-ID = 1;

Der Unterschied zwischen den drei Methoden

Ähnlichkeiten

  • Mit Truncate, Delete ohne Where-Klausel und Drop werden die Daten in der Tabelle gelöscht.
  • Sowohl „Drop“ als auch „Truncate“ sind DDL-Anweisungen (Data Definition Language) und werden nach der Ausführung automatisch festgeschrieben.

Unterschiede

  • Anweisungstyp: Die Löschanweisung ist eine Datenbankmanipulationssprache (DML), Truncate und Drop sind eine Datenbankdefinitionssprache (DDL).
  • Effizienz: Im Allgemeinen gilt: löschen > abschneiden > löschen;
  • Ob die Tabellenstruktur gelöscht werden soll: Truncate und Delete löschen nur Daten, nicht aber die Tabellenstruktur. Nach dem Löschen erstellt Truncate den Index neu (die ID beginnt nach dem Einfügen der neuen Daten bei 0), während Delete den Index nicht löscht (die neu eingefügten Daten werden nach dem Index der gelöschten Daten weiter ansteigen). Die Drop-Anweisung löscht die Tabellenstruktur einschließlich abhängiger Einschränkungen, Trigger, Indizes usw.
  • Sicherheit: „Drop“ und „Truncate“ zeichnen keine MySQL-Protokolle auf und können nicht zurückgesetzt werden, während „Delete“ MySQL-Protokolle aufzeichnet und zurückgesetzt werden kann.
  • Rückgabewert: „delete“ gibt die Anzahl der gelöschten Datensätze nach der Operation zurück, während „truncate“ 0 oder -1 zurückgibt (0 bei Erfolg, -1 bei Fehlschlag).

Schnelle Fakten

Unterschied zwischen „Löschen“ und „Löschen aus“

Wenn Sie nur eine Tabelle löschen, ist der Effekt der gleiche. Wenn Sie andere Tabellen verknüpfen müssen, müssen Sie from verwenden.

lösche tb1 aus tb1 m, wobei die ID in (wähle die ID aus tb2 aus);

Nutzungszusammenfassung

  • Wenn Sie die Tabellenstruktur löschen möchten, verwenden Sie „drop“.
  • Wenn Sie die Tabellenstruktur beibehalten, aber alle Datensätze löschen möchten, verwenden Sie „truncate“.
  • Wenn Sie die Tabellenstruktur beibehalten, aber einige Datensätze löschen möchten, verwenden Sie „Löschen“.

Damit ist dieser Artikel über drei Möglichkeiten zum Löschen einer Tabelle in MySQL abgeschlossen (Zusammenfassung). Weitere Informationen zum Löschen einer Tabelle in MySQL finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • So prüfen Sie, ob eine Tabelle in MySQL vorhanden ist, und löschen sie dann stapelweise
  • Warum die Tabellendateigröße nach dem Löschen von Daten in MySQL unverändert bleibt
  • So finden und löschen Sie doppelte Datensätze in MySQL
  • Detaillierte Erläuterung mehrerer praktischer Lösungen zum schnellen Löschen großer Datenmengen (zig Millionen) in MySQL
  • Spezifische Methode zum Löschen des MySQL-Dienstes
  • MySQLs Methode zum Umgang mit doppelten Daten (Verhindern und Löschen)
  • MySQL-Datenbankoperationen (Erstellen, Auswählen, Löschen)
  • So stellen Sie gelöschte MySQL 8.0.17-Root-Konten und Passwörter unter Windows wieder her
  • So löschen Sie den MySQL 8.0-Dienst vollständig unter Linux
  • Implementierung der MySQL-Tabellenlöschoperation (Unterschiede zwischen Löschen, Abschneiden und Löschen)
  • Fehlerbehebung bei den Gründen, warum gelöschte MySQL-Datensätze nicht wirksam werden

<<:  So deklarieren Sie einen Cursor in MySQL

>>:  Analyse der Nutzungsszenarien und Konfigurationsmethoden von Nginx Rewrite

Artikel empfehlen

React implementiert doppelten Schieberegler zum Querschieben

In diesem Artikel wird der spezifische Code für R...

Tabelle der durch hasLayout verursachten CSS-Fehler

Der IE hat schon seit längerem Probleme. Als alle ...

Eine detaillierte Erklärung der subtilen Unterschiede zwischen Readonly und Disabled

Sowohl die Optionen „Nur lesen“ als auch „Deaktivi...

Prozessdiagramm zum Aufbau des Linux RabbitMQ-Clusters

1. Allgemeine Schritte Zu Beginn haben wir die In...

Einführung und Verwendung von Triggern und Cursorn in MySQL

Trigger-Einführung Ein Trigger ist eine spezielle...

Diagramm des Datenübertragungsprozesses beim dritten TCP-Handshake

Die Prozesspakete mit dem SYN-Flag im RFC793-Doku...

Beispielcode zur Umsetzung des „Pluszeichen“-Effektes mit CSS

So erzielen Sie den unten gezeigten Pluszeichen-E...

Detaillierte Erklärung der Verwendung des Bash-Befehls

Unter Linux wird Bash als Standard übernommen, wa...