Truncate Table-筆記

一、語法:

TRUNCATE TABLE namespa

二、參數釋義

name是要截斷的表的名稱或要刪除其所有行的表的名稱。日誌

三、區別

1)、TRUNCATE TABLE 在功能上與不帶 WHERE 子句的 DELETE 語句相同:兩者均刪除表中的所有行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系統和事務日誌資源少。索引

DELETE 語句每次刪除一行,並在事務日誌中爲所刪除的每行記錄一項。事務

2)、TRUNCATE TABLE 經過釋放存儲表數據所用的數據頁來刪除數據,而且只在事務日誌中記錄頁的釋放。
TRUNCATE TABLE 刪除表中的全部行,但表結構及其列、約束、索引等保持不變。新行標識所用的計數值重置爲該列的種子。若是想保留標識計數值,請改用 DELETE。若是要刪除表定義及其數據,請使用 DROP TABLE 語句。資源

3)、對於由 FOREIGN KEY 約束引用的表,不能使用 TRUNCATE TABLE,而應使用不帶 WHERE 子句的 DELETE 語句。因爲 TRUNCATE TABLE 不記錄在日誌中,因此它不能激活觸發器。語法

4)、TRUNCATE TABLE 不能用於參與了索引視圖的表引用

5)、對用TRUNCATE TABLE刪除數據的表上增長數據時,要使用UPDATE STATISTICS來維護索引信息。數據

相關文章
相關標籤/搜索