天唯网 关注数码科技发展
首页 /  科技数码 / 内容详情

delete与truncate区别

科技数码 时间:2024-06-10 05:01:34

truncate和delete的区别 

truncate和delete的主要区别如下:

1. 内存空间:truncate删除数据后重新写数据会从1开始,而delete删除数据后只会从删除前的最后一行续写。因此,truncate在内存空间上更省空间。

2. 处理速度:truncate直接从1开始,即全部清空开始,而delete需要先得到当前行数,从而进行续写。因此,truncate删除速度比delete快。

3. 语句类型:delete属于DML语句,而truncate属于DDL语句。这导致了它们在事务中的不同现象:delete在事务中,因为属于DML语句,所以可以进行回滚和提交操作(由操作者),而truncate在事务中,执行后会自动commit,所以不可以回滚。

4. 语法:delete可以在后续加上where进行针对行的删除,而truncate后面只能加上表名,直接删除表,无法where。

需要注意,truncate和drop不能够激活触发器,因为该操作不记录各行删除。

标签: #科技数码

郑重声明:图文由自媒体作者发布,我们尊重原作版权,但因数量庞大无法逐一核实,图片与文字所有方如有疑问可与我们联系,核实后我们将予以删除。

联系我们 关于我们 版权申明 天唯网数码 广州小漏斗信息技术有限公司 版权所有 粤ICP备20006251号网站地图 网站地图2