當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


SQL DROP和TRUNCATE的區別用法及代碼示例


先決條件 - DROP, and TRUNCATE in SQL

1. 掉落:
刪除是一個DDL(數據定義語言)命令,用於刪除該表的表定義和索引、數據、約束、觸發器等。 Performance-wise DROP 命令執行速度很快,但比 TRUNCATE 慢,因為它會引起複雜性。與 DELETE 不同,使用 DROP 命令後我們無法回滾數據。在 DROP 命令中,表空間從內存中釋放,因為它永久刪除表及其所有內容。

DROP 命令的語法 -

DROP TABLE table_name;

2. 截斷:
截斷是一個DDL(數據定義語言)命令。它用於刪除表中的所有元組。與 DROP 命令一樣,TRUNCATE 命令也不包含 WHERE 子句。 TRUNCATE 命令比 DROP 和 DELETE 命令更快。與 DROP 命令一樣,使用此命令後我們也無法回滾數據。

TRUNCATE 命令的語法 -

TRUNCATE TABLE table_name; 

讓我們看看 SQL 中 DROP 和 TRUNCATE 命令的區別:-

S.NO DROP TRUNCATE
1. DROP 命令用於刪除表定義及其內容。 而 TRUNCATE 命令用於刪除表中的所有行。
2. 在 DROP 命令中,表空間從內存中釋放。 而 TRUNCATE 命令不會從內存中釋放表空間。
3. DROP 是 DDL(數據定義語言)命令。 而 TRUNCATE 也是一個 DDL(數據定義語言)命令。
4. DROP命令中,表的視圖不存在。 在該命令中,表的視圖是存在的。
5. 在 DROP 命令中,完整性約束將被刪除。 在此命令中,完整性約束不會被刪除。
6. 在 DROP 命令中,不使用撤消空間。 在此命令中,使用了撤消空間,但小於 DELETE。
7. DROP 命令執行速度很快,但會帶來複雜性。 雖然這個命令比 DROP 更快。

相關用法


注:本文由純淨天空篩選整理自MKS075大神的英文原創作品 Difference between DROP and TRUNCATE in SQL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。