Unterschied Zwischen Löschen Und Löschen

Unterschied Zwischen Löschen Und Löschen
Unterschied Zwischen Löschen Und Löschen

Video: Unterschied Zwischen Löschen Und Löschen

Video: Unterschied Zwischen Löschen Und Löschen
Video: Unterschied zwischen DELETE und TRUNCATE 2024, April
Anonim

Löschen gegen Löschen

Die Befehle Löschen und Löschen gehören zu SQL-Anweisungen (Structured Query Language) und werden beim Entfernen von Daten aus einer Datenbank verwendet. Löschen ist ein DML-Befehl (Data Manipulation Language). Es löscht einige oder alle Daten aus einer Tabelle gemäß der vom Benutzer angegebenen Bedingung. Die Anweisung delete entfernt nur die Datensätze in der Tabelle, die Tabellenstruktur wird jedoch in der Datenbank angezeigt. Der Drop-Befehl ist eine DDL-Anweisung (Data Definition Language) und verhält sich anders als der Delete-Befehl. Da es sich nicht um eine bedingungsbasierte Anweisung handelt, werden die gesamten Daten aus der Tabelle gelöscht. Außerdem werden die Tabellenstruktur und alle Verweise auf diese Tabelle dauerhaft aus der Datenbank entfernt.

Anweisung löschen

Wie oben erwähnt, entfernt die Delete-Anweisung Daten aus einer Tabelle basierend auf der angegebenen Bedingung, und die Where-Klausel wird mit Delete verwendet, um diese erforderliche Bedingung anzugeben. Wenn die Where-Klausel nicht mit Delete angegeben wird, werden alle Tabellendaten aus der Tabelle entfernt. Beim Löschen bleibt die vorhandene Tabellenstruktur jedoch unverändert. Daher muss der Benutzer die Tabellenstruktur nicht definieren, wenn er die Tabelle erneut verwenden möchte. Da Löschen ein DML-Befehl ist, wird er nach der Ausführung nicht automatisch festgeschrieben. Dies kann also zurückgesetzt werden, um den vorherigen Vorgang rückgängig zu machen. Andernfalls sollte die Commit-Anweisung aufgerufen werden, um die Änderungen dauerhaft zu machen. Während der Ausführung der Delete-Anweisung wird für jede Zeilenlöschung ein Eintrag im Transaktionsprotokoll aufgezeichnet. Dies wirkt sich also auf die Verlangsamung des Betriebs aus. Auch,Der nach der Ausführung verwendete Speicherplatz wird nicht freigegeben.

Es folgt die Syntax für die Delete-Anweisung.

LÖSCHEN VON

oder

LÖSCHEN VON WO

Drop-Anweisung

Die Drop-Anweisung entfernt nicht nur alle Tabellendatensätze ohne Bedingung aus der Datenbank, sondern auch die Tabellenstruktur, Integritätsbeschränkungen, Indizes und Zugriffsrechte der relevanten Tabelle dauerhaft aus der Datenbank. Daher sind auch nicht mehr alle Beziehungen für andere Tabellen vorhanden, und Informationen zur Tabelle werden aus dem Datenwörterbuch entfernt. Wenn der Benutzer die Tabelle wiederverwenden möchte, muss er die Tabellenstruktur und alle anderen Verweise auf die Tabelle erneut definieren. Drop ist ein DDL-Befehl und kann nach Ausführung des Befehls nicht mehr zurückgesetzt werden, da der Drop-Befehl eine automatische Festschreibung verwendet. Daher sollte der Benutzer bei der Verwendung dieses Befehls sehr vorsichtig sein. Die Drop-Anweisung kann nicht auf Systemtabellen angewendet werden und kann auch nicht für Tabellen mit Fremdschlüsseleinschränkungen verwendet werden.

Der Befehl zum Löschen kann nicht nur für SQL-Tabellen verwendet werden, sondern auch für Datenbanken, Ansichten und Tabellenspalten. Alle in diesen Objekten gespeicherten Daten gehen zusammen mit den Objekten für immer verloren.

Es folgt die typische Syntax für den Drop-Befehl.

TROPFENTABELLE

Was ist der Unterschied zwischen Löschen und Löschen?

1. Mit den Befehlen Löschen und Löschen werden Tabellendaten aus einer Datenbank entfernt.

2. Die Delete-Anweisung führt jedoch ein bedingtes Löschen durch, während der Drop-Befehl ganze Datensätze in der Tabelle löscht.

3. Außerdem entfernt die Anweisung Delete nur die Zeilen in der Tabelle und behält die Tabellenstruktur bei, während der Befehl Drop alle Daten in der Tabelle und der Tabellenstruktur entfernt und alle anderen Referenzen aus der Datenbank entfernt.

4. Löschen ist eine DML-Anweisung, während Löschen ein DDL-Befehl ist. Der Löschvorgang kann also zurückgesetzt werden und wird nicht automatisch festgeschrieben, während der Löschvorgang in keiner Weise zurückgesetzt werden kann, da es sich um eine automatisch festgeschriebene Anweisung handelt.

5. Der Befehl "Löschen" kann nicht für Tabellen verwendet werden, auf die durch Fremdschlüsseleinschränkungen verwiesen wurde, während der Befehl "Löschen" stattdessen verwendet werden kann.

6. Der Befehl "Löschen" sollte im Vergleich zur Anweisung "Löschen" in SQL-Anwendungen sorgfältig und mit gutem Verständnis verwendet werden.

Empfohlen: