Zwei Möglichkeiten zum Löschen von Tabellendaten in MySQL und ihre Unterschiede

Zwei Möglichkeiten zum Löschen von Tabellendaten in MySQL und ihre Unterschiede

Es gibt zwei Möglichkeiten, Daten in MySQL zu löschen:

  1. Truncate ist eine grobe Art der Lichtung
  2. Löschen ist eine verfeinerte Löschung

Löschvorgang

Wenn Sie alle Daten in der Tabelle löschen müssen, können Sie einen der folgenden Schritte ausführen:

aus Tabellennamen löschen;
Tabelle Tabellenname abschneiden;

Wenn Sie nur einen Teil der Daten löschen möchten, können Sie nur „delete“ verwenden:

delete from tablename where case1 and case2;

Der Unterschied

Beim granularen Löschen einiger Daten kann nur „Löschen“ verwendet werden.
Beim Löschen aller Tabellendaten sind beide Methoden zulässig. Es gibt einige Unterschiede zwischen den beiden Methoden:

Rückgabewert

Der Rückgabewert von truncate ist 0, während delete die Anzahl der gelöschten Datensätze zurückgibt.

mysql> serviceHost abschneiden;
Abfrage OK, 0 Zeilen betroffen (0,04 Sek.)
mysql> löschen vom ServiceHost, wo Ersteller='Test';
Abfrage OK, 4 Zeilen betroffen (0,01 Sek.)

Auto-Inkrement-Feld

Wenn die Tabelle ein Auto-Increment-Feld enthält, wird es durch Truncate auf 1 zurückgesetzt, während durch Delete der maximale Auto-Increment-Wert beibehalten wird.

Ausführungseffizienz

Truncate scannt die Tabelle nicht. Dies entspricht dem Neuerstellen der Tabelle, wobei nur die Tabellenstruktur beibehalten und dann die ursprüngliche Tabelle gelöscht wird. Dies ist sehr effizient.
Beim Löschen wird die gesamte Tabelle gescannt und die Entscheidung wird auf Grundlage der Where-Anweisung getroffen. Daher ist die Funktion ineffizient.

Betriebsprotokoll

Truncate schreibt nichts in das Serverprotokoll und kann nicht wiederhergestellt werden.
Beim Löschen wird das Serverprotokoll geschrieben.

auslösen

Durch Abschneiden wird der Auslöser nicht aktiviert, durch Löschen jedoch schon.

Zusammenfassen

Oben habe ich Ihnen die beiden Möglichkeiten zum Löschen von MySQL-Tabellendaten und ihre Unterschiede vorgestellt. Ich hoffe, es wird Ihnen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • Beispiel und Analyse zum Löschen von MySQL-Datentabellen
  • Stapelverarbeitung von Feldinhalten, Löschen, Kopieren und anderen Aktualisierungsbefehlen für MySQL-Datentabellen
  • asp php klar Zugriff mysql mssql Datenbank Code

<<:  Detaillierte Erläuterung der JavaScript-Closure-Probleme

>>:  Schritte zum Bereitstellen eines Docker-Projekts in IDEA

Artikel empfehlen

So ändern Sie die Systemsprache von CentOS7 in vereinfachtes Chinesisch

veranschaulichen Bei einer Eigeninstallation des ...

Detaillierte Untersuchung der MySQL-Mehrversions-Parallelitätskontrolle MVCC

MVCC MVCC (Multi-Version Concurrency Control) ist...

Tutorial zur Samba-Konfiguration für die Dateifreigabe im Linux-System

Inhaltsverzeichnis Deinstallieren und installiere...

So verwenden Sie das Marquee-Tag im XHTML-Code

Im Forum habe ich gesehen, dass der Internetnutzer...

4 Möglichkeiten zum Anzeigen von Prozessen in LINUX (Zusammenfassung)

Ein Prozess ist ein Programmcode, der in der CPU ...

Eine kurze Erläuterung der Situationen in MySQL, die zu Indexfehlern führen

Hier einige Tipps von Ausbildungsstätten und mein...

HTML ist die zentrale Grundlage für die Entwicklung von WEB-Standards

HTML-zentrierte Front-End-Entwicklung entspricht p...

Detaillierte Erläuterung des MySQL InnoDB-Sekundärindex-Sortierbeispiels

Sortierproblem Ich habe kürzlich auf Geek Time „4...

So implementieren Sie Sveltes Defer Transition in Vue

Ich habe mir vor Kurzem Rich Harris‘ Video „Rethi...

react-beautiful-dnd implementiert die Drag-and-Drop-Funktion für Komponenten

Inhaltsverzeichnis 1. Installation 2.API 3. reagi...

jQuery implementiert den Fall der Schriftgrößenanpassung

In diesem Artikel wird der spezifische Code von j...

Detaillierte Erklärung, warum MySQL nicht mit UNION zwei Abfragen verbinden kann

Überblick UNION Mit dem Schlüsselwort „Verbindung...