Unterschied zwischen Tropfen und Kürzung

Unterschied zwischen Tropfen und Kürzung

Drop vs abgeschnitten

Drop and Tricate sind zwei SQL -Anweisungen (Structured Query Language), die in Datenbankverwaltungssystemen verwendet werden, wobei wir Datensätze aus einer Datenbank entfernen möchten. Sowohl Drop- als auch Melcate -Anweisungen entfernen die gesamten Daten in einer Tabelle und der zugehörigen SQL -Anweisung. Der Betrieb des Löschens ist in diesem Fall nicht wirksam, da mehr Speicherplätze als Tropfen und Kürzung verwendet werden.

Im Fall, wenn wir eine Tabelle in einer Datenbank mit ihren All -Daten abwerfen möchten, können wir diese mithilfe von Drop -Anweisung problemlos durchführen. Drop -Befehl ist ein DDL -Befehl (Data Definition Language) und kann verwendet werden, um eine vorhandene Datenbank, Tabelle, Index oder Ansicht zu zerstören. Es löscht die gesamten Informationen in einer Tabelle sowie die Tabellenstruktur aus der Datenbank. Außerdem möchten wir vielleicht alle Daten in einer Tabelle loswerden, jedoch ohne die Tabelle, und wir können in einem solchen Szenario in SQL Tricate -Anweisung verwenden. Truncate ist auch ein DDL.

DROP -Befehl

Wie bereits erwähnt, beseitigt DROP -Befehl die Tabellendefinition und alle Daten, Integritätsbeschränkungen, Indizes, Auslöser und Zugriffsberechtigte, die in dieser bestimmten Tabelle erstellt wurden. Daher lässt es das vorhandene Objekt vollständig aus der Datenbank fallen, und die Beziehungen zu anderen Tabellen gültig auch nach Ausführung des Befehls nicht mehr gültig. Außerdem werden alle Informationen zur Tabelle aus dem Datenwörterbuch entfernt. Im Folgenden finden Sie die typische Syntax für die Verwendung der Drop -Anweisung in einer Tabelle.

Tropfentisch

Wir müssen einfach den Tabellennamen ersetzen, den wir aus der Datenbank im obigen Exemplar of Drop -Befehl entfernen möchten.

Es ist wichtig darauf hinzuweisen, dass die Drop -Anweisung nicht zum Löschen einer Tabelle verwendet werden kann, auf die bereits durch eine fremde Schlüsselbeschränkung verwiesen wurde. In diesem Fall sollte die Referenzierung fremder Schlüsselbeschränkungen oder diese bestimmte Tabelle zuerst fallen gelassen werden müssen. Außerdem kann die Drop -Anweisung nicht auf die Systemtabellen in der Datenbank angewendet werden.

Als Drop -Befehl ist eine automatische Aussageerklärung, die Operation nach dem Entlassen kann nicht zurückgerollt werden und es werden keine Auslöser abgefeuert. Wenn eine Tabelle fallen gelassen wird, sind alle Verweise auf die Tabelle nicht gültig, und wenn wir die Tabelle erneut verwenden möchten, muss sie mit allen Integritätsbeschränkungen und Zugriffsberechtigten nachgebildet werden. Alle Beziehungen zu den anderen Tischen müssen ebenfalls wieder lokalisiert sein.

Befehl verkürzen

Der Befehl TRUNCATE ist ein DDL. Truncate eliminiert Daten aus einer Tabelle, indem sie die zum Speichern der Tabellendaten verwendeten Datenseiten verwandeln, und nur diese Seitenverhandlungen werden im Transaktionsprotokoll aufbewahrt. Daher werden weniger Transaktionsprotokollressourcen und Systemressourcen im Vergleich zu anderen verwandten SQL -Befehlen wie Delete verwendet. Kürzung ist also etwas schneller als andere. Im Folgenden finden Sie die typische Syntax für den Befehl TRUNCATE.

Tisch verkürzen

Wir sollten den Tabellennamen, aus dem wir die gesamten Daten entfernen möchten, in der obigen Syntax ersetzen.

TRUNCATE kann nicht in einer Tabelle verwendet werden, auf die durch eine fremde Schlüsselbeschränkung verwiesen wurde. Es verwendet ein Commit automatisch, bevor es handelt, und ein weiteres Commit danach, sodass das Rollback der Transaktion unmöglich ist und keine Auslöser abgefeuert werden. Wenn wir die Tabelle wiederverwenden möchten, müssen wir nur auf die vorhandene Tabellendefinition in der Datenbank zugreifen.

Was ist der Unterschied zwischen Tropfen und Kürzung?

Sowohl Drop- als auch Truncate -Befehle sind DDL -Befehle und auch automatische Aussagen, sodass die mit diesen Befehle durchgeführten Transaktionen nicht zurückgerollt werden können.

Der primäre Unterschied zwischen Drop und Tripat besteht darin, dass der Drop -Befehl nicht nur alle Daten in einer Tabelle entfernt, sondern auch die Tabellenstruktur dauerhaft aus der Datenbank mit allen Referenzen entfernt, während der Befehl Truncate nur alle Zeilen in einer Tabelle entfernt und es bewahrt die Tabellenstruktur und ihre Referenzen.

Wenn eine Tabelle fallen gelassen wird, sind die Beziehungen zu anderen Tabellen nicht mehr gültig, und die Integritätsbeschränkungen und Zugriffsberechtigte werden ebenfalls entfernt. Wenn die Tabelle wiederverwendet werden muss, muss sie mit den Beziehungen, Integritätsbeschränkungen und auch den Zugriffsberechtigten rekonstruiert werden. Wenn jedoch eine Tabelle verkürzt wird, bleiben die Tabellenstruktur und ihre Einschränkungen für die zukünftige Verwendung bestehen, und so ist eine der oben genannten Erholungen für die Wiederverwendung nicht erforderlich.

Wenn diese Befehle angewendet werden, müssen wir vorsichtig sein, sie zu verwenden. Außerdem sollten wir ein besseres Verständnis für die Art dieser Befehle, ihre Funktionsweise und einige sorgfältige Planung haben, bevor sie sie verwenden, um das Fehlen von Fehlern zu verhindern. Schließlich können beide Befehle verwendet werden, um die Datenbanken schnell und einfach zu bereinigen, wobei weniger Ressourcen konsumiert werden können.