刪除數(shù)據(jù) delete、truncate 命令

[TOC]

1. delete 命令


命令格式

delete from 表名 [刪除條件];

刪除表中的所有數(shù)據(jù)

delete from 表名;

刪除表中符合匹配條件的數(shù)據(jù)

delete from 表名 刪除條件;

使用示例

-- 刪除 user 表中的所有數(shù)據(jù)
delete from user;

-- 刪除 user 表中 id 字段值為 1 的數(shù)據(jù)
delete from user where id = 1;

-- 刪除 user 表 以 id 字段降序排列時的前 5 條數(shù)據(jù)
delete from user order by id desc limit 5;

2. truncate 命令


命令格式

truncate [table] 表名;

使用示例

刪除 user 表中的所有數(shù)據(jù),并且重置自動增長的值

truncate user;

truncate table user;

3. delete、truncate 的區(qū)別


一、delete 刪除數(shù)據(jù)的速度慢,truncate 刪除數(shù)據(jù)的速度快

二、delete 支持事務(wù),可以進行事務(wù)回滾;truncate 不支持事務(wù),不能執(zhí)行事務(wù)回滾

三、delete 支持帶條件的刪除,可以只刪除某一條數(shù)據(jù);truncate 則不行,只能用于刪除表中的所有數(shù)據(jù)

四、delete 刪除不會重置自動增長(auto_increment),truncate 則會重置自動增長的值,重新以 1 開始

五、delete 可以觸發(fā) 觸發(fā)器,truncate 則不行

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容