国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

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

2024-08-31 00:58:46
字體:
來源:轉載
供稿:網友
備注

與 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)。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 旌德县| 璧山县| 洛宁县| 兴安盟| 繁峙县| 左贡县| 泽库县| 海门市| 乌拉特前旗| 绥棱县| 佛学| 巢湖市| 利津县| 宣汉县| 蕉岭县| 韶关市| 信丰县| 元朗区| 德庆县| 土默特左旗| 凉城县| 当阳市| 永济市| 蓬莱市| 琼海市| 云浮市| 定结县| 苏州市| 邵武市| 西峡县| 胶南市| 宜阳县| 庄河市| 德江县| 临湘市| 东乡| 青阳县| 会昌县| 阳朔县| 潮安县| 丘北县|