程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> TRUNCATE 疾速刪除表中的一切數據

TRUNCATE 疾速刪除表中的一切數據

編輯:MSSQL

TRUNCATE 疾速刪除表中的一切數據。本站提示廣大學習愛好者:(TRUNCATE 疾速刪除表中的一切數據)文章只能為提供參考,不一定能成為您想要的結果。以下是TRUNCATE 疾速刪除表中的一切數據正文


備注

與 DELETE 語句比擬,TRUNCATE TABLE 具有以下長處:

所用的事務日記空間較少。

DELETE 語句每次刪除一行,並在事務日記中為所刪除的每行記載一個條目。TRUNCATE TABLE 經由過程釋放用於存儲表數據的數據頁來刪除數據,而且在事務日記中只記載頁釋放。


應用的鎖平日較少。

當應用行鎖履行 DELETE 語句時,將鎖定表中各行以便刪除。TRUNCATE TABLE 一直鎖定表和頁,而不是鎖定各行。


表中將毫無破例地不留下任何頁。

履行 DELETE 語句後,表仍會包括空頁。例如,必需至多應用一個排他 (LCK_M_X) 表鎖,能力釋放堆中的空表。假如履行刪除操作時沒有應用表鎖,表(堆)中將包括很多空頁。關於索引,刪除操作會留下一些空頁,雖然這些頁會經由過程後台消除過程敏捷釋放。


TRUNCATE TABLE 刪除表中的一切行,但表構造及其列、束縛、索引等堅持不變。若要刪除表界說及其數據,請應用 DROP TABLE 語句。

假如表包括標識列,該列的計數重視置為該列界說的種子值。假如不決義種子,則應用默許值 1。若要保存標識計數器,請應用 DELETE。

限制

不克不及對以下表應用 TRUNCATE TABLE:
由 FOREIGN KEY 束縛援用的表。
介入索引視圖的表。

經由過程應用事務復制或歸並復制宣布的表。

關於具有以上一個或多個特點的表,請應用 DELETE 語句。

TRUNCATE TABLE 不克不及激活觸發器,由於該操作不記載各個行刪除。有關具體信息,請參閱 CREATE TRIGGER (Transact-SQL)。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved