Mysql三種常用的刪除數(shù)據(jù)或者表的方式
前言
在 MySQL 中,有三種常用的方式可以刪除表中的數(shù)據(jù)或整個(gè)表,它們分別是 TRUNCATE、DROP 和 DELETE。
TRUNCATE TABLE
TRUNCATE TABLE屬于DDL語言,不走事務(wù),數(shù)據(jù)不會(huì)回滾
TRUNCATE TABLE 語句會(huì)刪除表中的所有數(shù)據(jù),但保留表的結(jié)構(gòu),同時(shí)重置自增主鍵,釋放空間
語法:
TRUNCATE TABLE table_name;
DROP TABLE
DROP TABLE屬于DDL語言,不走事務(wù),數(shù)據(jù)不會(huì)回滾
DROP TABLE 語句會(huì)完全刪除表,包括表的結(jié)構(gòu)和其中的數(shù)據(jù)。它會(huì)永久刪除表,立即釋放空間,無法撤銷。
語法:
DROP TABLE [IF EXISTS] table_name;
如果指定了 IF EXISTS,則在表不存在時(shí)不會(huì)報(bào)錯(cuò),直接返回操作成功。例如,DROP TABLE IF EXISTS employees; 將刪除名為 employees 的表,如果該表存在的話。
DELETE
DELETE屬于DML操作語言,只會(huì)刪除數(shù)據(jù)不會(huì)刪除表結(jié)構(gòu),會(huì)走事務(wù),可回滾
DELETE 語句用于逐行刪除表中的數(shù)據(jù),可以根據(jù)指定的條件刪除特定的行。
語法:
DELETE FROM table_name [WHERE condition];
DELETE 語句是一種較為慢速和資源密集的操作,因?yàn)樗鼘⒅鹦袆h除表中的數(shù)據(jù),并且會(huì)觸發(fā)事務(wù)日志和觸發(fā)器等操作。如果只是想刪除表中的數(shù)據(jù)而不是整個(gè)表,TRUNCATE TABLE 操作通常更快和更高效。
使用 DELETE 語句刪除表中的數(shù)據(jù)并不會(huì)立即釋放磁盤空間,當(dāng)你執(zhí)行 DELETE 語句刪除行時(shí),實(shí)際上是將這些行標(biāo)記為已刪除,但數(shù)據(jù)仍然占用磁盤空間。
如果你希望立即釋放磁盤空間,可以使用 OPTIMIZE TABLE 命令。該命令將重建表,并且可以壓縮表的數(shù)據(jù),從而釋放已刪除行所占用的空間。
到此這篇關(guān)于Mysql三種常用的刪除數(shù)據(jù)或者表的方式的文章就介紹到這了,更多相關(guān)Mysql 刪除內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺談MYSQL中樹形結(jié)構(gòu)表3種設(shè)計(jì)優(yōu)劣分析與分享
在開發(fā)中經(jīng)常遇到樹形結(jié)構(gòu)的場景,本文將以部門表為例對(duì)比幾種設(shè)計(jì)的優(yōu)缺點(diǎn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09MySQL 可擴(kuò)展設(shè)計(jì)的基本原則
可擴(kuò)展設(shè)計(jì)是一個(gè)非常復(fù)雜的系統(tǒng)工程,所涉及的各個(gè)方面非常的廣泛,技術(shù)也較為復(fù)雜,可能還會(huì)帶來很多其他方面的問題。但不管我們?nèi)绾卧O(shè)計(jì),不管遇到哪些問題,有些原則我們還是必須確保的。2021-05-05MYSQL SERVER收縮日志文件實(shí)現(xiàn)方法
這篇文章主要介紹了MYSQL SERVER收縮日志文件實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08MySql允許遠(yuǎn)程連接如何實(shí)現(xiàn)該功能
這篇文章主要介紹了 MySql允許遠(yuǎn)程連接如何實(shí)現(xiàn)該功能的相關(guān)資料,需要的朋友可以參考下2017-02-02MySQL巧用sum、case和when優(yōu)化統(tǒng)計(jì)查詢
這篇文章主要給大家介紹了關(guān)于MySQL巧用sum、case和when優(yōu)化統(tǒng)計(jì)查詢的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03Mysql實(shí)現(xiàn)全文檢索、關(guān)鍵詞跑分的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Mysql實(shí)現(xiàn)全文檢索、關(guān)鍵詞跑分的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09MySQL中刪除重復(fù)數(shù)據(jù)的簡單方法
這篇文章主要介紹了MySQL中刪除重復(fù)數(shù)據(jù)的簡單方法,比起一般的NOT IN語句的效率更為高,需要的朋友可以參考下2015-05-05MySQL優(yōu)化案例系列-mysql分頁優(yōu)化
這篇文章主要介紹了MySQL優(yōu)化案例系列-mysql分頁優(yōu)化,需要的朋友可以參考下2016-08-08