TRUNCATE和DELETE的幾點區別spa
一、TRUNCATE在各類表上不管是大的仍是小的都很是快。若是有ROLLBACK命令DELETE將被撤銷,而TRUNCATE則不會被撤銷。
二、TRUNCATE是一個DDL語言,向其餘全部的DDL語言同樣,他將被隱式提交,不能對TRUNCATE使用ROLLBACK命令。
三、TRUNCATE將從新設置高水平線和全部的索引。在對整個表和索引進行徹底瀏覽時,通過TRUNCATE操做後的表比DELETE操做後的表要快得多。
四、TRUNCATE不能觸發任何DELETE觸發器。
五、不能授予任何人清空他人的表的權限。 .net
六、當表被清空後表和表的索引講從新設置成初始大小,而delete則不能。
七、不能清空父表。 blog