truncate:
会清空表的内容,直接在数据字典中清除段定义实现的。是DDL语句,不会产生重做日志,删除时不能触发trigger。能针对具有自动递增值的字段,计数重置归零。表中结构、约束、索引等保持不变。
TRUNCATE TABLE 表名;
delete:
将指定行数据在数据库缓冲区高速缓存中清除,每清除一行都会在重做日志中记录,是DML语句,并且可以触发trigger。不能将递增字段的计数器清零。表中结构、约束、索引等保持不变。
drop:
删除整张表,是DDL语句。表结构、索引等均被删除。
DROP TABLE 表名;
在速度方面一般drop>truncate>delete。