DELETE 刪除數(shù)據(jù)
前面兩節(jié)分別介紹了刪除數(shù)據(jù)表、向表中插入數(shù)據(jù),本小節(jié)介紹如何刪除表中插入的數(shù)據(jù)。刪除數(shù)據(jù)的命令在工作中有許多的場景會用到,這節(jié)課我們就來學習一下如何刪除數(shù)據(jù)表中的某一條數(shù)據(jù):
1.刪除一條數(shù)據(jù)
這里以 teacher 表為例,刪除一條指定 id=8 的數(shù)據(jù),命令如下:
DELETE FROM teacher WHERE id = 8;
執(zhí)行結(jié)果如下圖:
2.刪除全部數(shù)據(jù)
以 teacher 表為例,刪除多條數(shù)據(jù)命令如下:
DELETE FROM teacher;
執(zhí)行結(jié)果如下圖:
3.清空表數(shù)據(jù)
清空表數(shù)據(jù)命令 :
TRUNCATE TABLE new_student;
執(zhí)行結(jié)果如下圖:
4.小結(jié)
本小節(jié)介紹了如何刪除指定 id 的數(shù)據(jù)、數(shù)據(jù)表所有數(shù)據(jù),需要注意的是使用 TRUNCATE 清空表所有數(shù)據(jù),和使用 DELETE 刪除表所有的數(shù)據(jù)的區(qū)別是:
- TRUNCATE 清空表數(shù)據(jù)的實際過程是先刪除數(shù)據(jù)表,然后新建一張和原來表結(jié)構(gòu)一模一樣的表來替代清空。
- DELETE 刪除表數(shù)據(jù)不會改變自增主鍵的增長值,例如本小節(jié)刪除示例圖介紹的 8 條數(shù)據(jù)使用 DELETE 全部刪除完之后再向數(shù)據(jù)表插入一條數(shù)據(jù) id 是從 9 開始自增的。