Sie können die Anweisung TRUNCATE TABLE als schnelle Methode zum Löschen aller Zeilen in einer Tabelle verwenden. Dies funktioniert schneller als eine DELETE-Anweisung ohne Bedingungen, da DELETE alle Änderungen ins Log schreibt, während die einzelnen gelöschten Zeilen mit TRUNCATE nicht aufgezeichnet werden.
Die Tabellendefinition für eine Tabelle, die mit der Anweisung TRUNCATE TABLE geleert wurde, bleibt zusammen mit ihren Indizes und anderen zugeordneten Objekten in der Datenbank, sofern Sie keine DROP TABLE-Anweisung ausführen.
Sie können TRUNCATE TABLE nicht benutzen, wenn eine andere Tabelle Zeilen enthält, die über eine Integritätsregel zur Aufrechterhaltung der referenziellen Integrität darauf zugreifen. Löschen Sie die Zeilen aus der Fremdtabelle oder kürzen Sie zuerst die Fremdtabelle und dann die Primärtabelle.
Das Kürzen von Basistabellen oder der Massenimport von Daten bewirken, dass Daten in Indizes (regulär oder Text) und in abhängigen materialisierten Ansichten veralten. Sie sollten zuerst die Daten in den Indizes und den abhängigen materialisierte Ansichten kürzen, die INPUT-Anweisung ausführen und dann die Indizes und materialisierten Ansichten neu aufbauen bzw. aktualisieren. Siehe TRUNCATE-Anweisung und TRUNCATE TEXT INDEX-Anweisung.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |