天天看點

MySQL清空表

清空表的兩種方式

MySQL有兩種清空表的方式。

清空(truncate)

delete from 表名;      

删除(delete)

truncate table 表名;      

兩種方式的差別

删除方式

  • truncate

    是整體删除,不掃描表,相當于重新建立了表,隻保留了表的結構,然後删除掉原有表,删除速度較快
  • delete

    是逐條删除,會掃描全表,會根據條件判斷,删除速度較慢

自增字段

  • truncate

    後自增字段重新從

    1

    開始
  • delete

    保持自增最大值

日志

  • truncate

    操作不寫入日志,是以清空的資料無法恢複
  • delete

    操作寫入日志,删除的資料可以恢複

觸發器

  • truncate

    不激活觸發器
  • delete

    激活觸發器

繼續閱讀