關於MySql清除表資料的方法選擇

2021-09-24 10:19:37 字數 449 閱讀 8983

為什麼80%的碼農都做不了架構師?>>>

在mysql中有兩種方法可以清除表資料

delete from tablename
delete語句可以攜帶where條件進行刪除,所以使用起來很靈活。但是delete語句在刪除的過程中會產生事務日誌,可以回滾資料,所以效能上面會有所降低!

值得注意的是,當表中有自增字段的時候,清除完資料之後,自增的值將會從1開始,如果不希望如此,可以在delete的時候加上乙個永遠為真的條件,比如where 1 = 1或者where true等。

truncate table tablename
truncate是清除表內所有的資料,靈活性不是很好。但是由於不建立事務日誌,truncate刪除的資料將無法恢復,效能上面將提公升很多!

兩種方式都可以選擇,根據不同需求選擇不同的方式!

清除mysql表中資料

delete from表名 truncate table表名 不帶where 引數的delete 語句可以刪除 mysql 表中所有內容,使用 truncate table 也可以清空 mysql 表中所有內容。效率上truncate 比delete 快,但truncate 刪除後不記錄 mysql...

清除mysql表中資料

delete from表名 truncate table表名 不帶where 引數的delete 語句可以刪除 mysql 表中所有內容,使用 truncate table 也可以清空 mysql 表中所有內容。效率上truncate 比delete 快,但truncate 刪除後不記錄 mysql...

清除mysql表中資料

delete from 表名 truncate table 表名 不帶where引數的delete語句可以刪除mysql表中所有內容,使用truncate table也可以清空mysql表中所有內容。效率上truncate比delete快,但truncate刪除後不記錄mysql日誌,不可以恢復資料...