刪除數據 delete、truncate 命令


1. delete 命令


命令格式

delete from 表名 [刪除條件];

刪除表中的所有數據

delete from 表名;

刪除表中符合匹配條件的數據

delete from 表名 刪除條件;

使用示例

-- 刪除 user 表中的所有數據
delete from user;

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

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

2. truncate 命令


命令格式

truncate [table] 表名;

使用示例

刪除 user 表中的所有數據,並且重置自動增長的值

truncate user;

truncate table user;

3. delete、truncate 的區別


一、delete 刪除數據的速度慢,truncate 刪除數據的速度快

二、delete 支持事務,可以進行事務回滾;truncate 不支持事務,不能執行事務回滾

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

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

五、delete 可以觸發 觸發器,truncate 則不行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM