主頁 > 知識庫 > TRUNCATE 快速刪除表中的所有數據

TRUNCATE 快速刪除表中的所有數據

熱門標簽:貴州房產智能外呼系統(tǒng)供應商 小e電話機器人 電銷外呼有錄音系統(tǒng)有哪些 外呼運營商線路收費 一個導航軟件能用幾個地圖標注點 申請400電話在哪辦理流程 鎮(zhèn)江網路外呼系統(tǒng)供應商 百度地圖標注改顏色 臨沂智能電銷機器人加盟哪家好
備注

與 DELETE 語句相比,TRUNCATE TABLE 具有以下優(yōu)點:

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

DELETE 語句每次刪除一行,并在事務日志中為所刪除的每行記錄一個條目。TRUNCATE TABLE 通過釋放用于存儲表數據的數據頁來刪除數據,并且在事務日志中只記錄頁釋放。


使用的鎖通常較少。

當使用行鎖執(zhí)行 DELETE 語句時,將鎖定表中各行以便刪除。TRUNCATE TABLE 始終鎖定表和頁,而不是鎖定各行。


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

執(zhí)行 DELETE 語句后,表仍會包含空頁。例如,必須至少使用一個排他 (LCK_M_X) 表鎖,才能釋放堆中的空表。如果執(zhí)行刪除操作時沒有使用表鎖,表(堆)中將包含許多空頁。對于索引,刪除操作會留下一些空頁,盡管這些頁會通過后臺清除進程迅速釋放。


TRUNCATE TABLE 刪除表中的所有行,但表結構及其列、約束、索引等保持不變。若要刪除表定義及其數據,請使用 DROP TABLE 語句。

如果表包含標識列,該列的計數器重置為該列定義的種子值。如果未定義種子,則使用默認值 1。若要保留標識計數器,請使用 DELETE。

限制

不能對以下表使用 TRUNCATE TABLE:
由 FOREIGN KEY 約束引用的表。
參與索引視圖的表。

通過使用事務復制或合并復制發(fā)布的表。

對于具有以上一個或多個特征的表,請使用 DELETE 語句。

TRUNCATE TABLE 不能激活觸發(fā)器,因為該操作不記錄各個行刪除。有關詳細信息,請參閱 CREATE TRIGGER (Transact-SQL)。
您可能感興趣的文章:
  • oracle數據庫刪除數據Delete語句和Truncate語句的使用比較
  • 數據庫中刪除語句Drop、Delete、Truncate的相同點和不同點的比較(實例說明)
  • MySQL刪除數據Delete與Truncate語句使用比較
  • smarty中先strip_tags過濾html標簽后truncate截取文章運用
  • drop,truncate與delete的區(qū)別
  • sqlserver 日志恢復方法(搞定drop和truncate)
  • 詳解MySQL中DROP,TRUNCATE 和DELETE的區(qū)別實現mysql從零開始
  • delete from 表名與truncate table 表名區(qū)別

標簽:合肥 晉城 三明 延邊 日照 澳門 保定 嘉興

巨人網絡通訊聲明:本文標題《TRUNCATE 快速刪除表中的所有數據》,本文關鍵詞  TRUNCATE,快速,刪除,表,中的,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《TRUNCATE 快速刪除表中的所有數據》相關的同類信息!
  • 本頁收集關于TRUNCATE 快速刪除表中的所有數據的相關信息資訊供網民參考!
  • 推薦文章