天天看點

mysql删除資料之delete

###############################

一、delete和truncate差別:

  • 靈活性:delete可以條件删除資料,而truncate隻能删除表的所有資料;
delete from table_test where ...

truncate table      
  • 效率:delete效率低于truncate,delete是一行一行地删除,truncate會重建表結構,
  • 事務:truncate是DDL語句,需要drop權限,是以會隐式送出,不能夠rollback;delete是DML語句,可以使用rollback復原。
  • 觸發器:truncate 不能觸發任何Delete觸發器;而delete可以觸發delete觸發器。

二、文法格式:

delete [low_priority] [quick] [ignore] from tbl_name  
[where where_definition]  
[order by ...]  
[limit row_count]      

 在删除行的過程中,ignore關鍵詞會使MySQL忽略所有的錯誤。

###################