溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

DELETE和DROP的區(qū)別

發(fā)布時(shí)間:2020-05-12 11:15:56 來源:億速云 閱讀:1272 作者:Leah 欄目:MySQL數(shù)據(jù)庫

SQL中的DELETE和DROP有什么區(qū)別?這篇文章運(yùn)用了實(shí)例代碼展示,代碼非常詳細(xì),可供感興趣的小伙伴們參考借鑒,希望對(duì)大家有所幫助。

DELETE和DROP的區(qū)別

DELETE命令的簡(jiǎn)單介紹

DELETE是一種數(shù)據(jù)操作語言(DDL)命令,可以使用DELETE命令來從表中刪除部分或全部記錄??梢院蚖HERE子句一起使用,用于刪除滿足添加的某些記錄;如果未指定WHERE條件,則將刪除所有記錄。【相關(guān)視頻教程推薦:MySQL教程】

注:使用DELETE命令無法刪除整個(gè)表或域、約束。

DELETE命令的語法如下:

DELETE FROM relation_name  where條件;

如果使用外鍵鏈接兩個(gè)表并從引用的表中刪除元組,則還將自動(dòng)刪除引用表中的數(shù)據(jù)以保持引用完整性。

DROP命令的簡(jiǎn)單介紹

DROP是一種數(shù)據(jù)定義語言(DDL)命令,可以從數(shù)據(jù)庫中刪除一個(gè)或多個(gè)表,它將刪除表的所有相關(guān)數(shù)據(jù),索引,觸發(fā)器,約束和權(quán)限規(guī)范

DROP命令的語法如下:

DROP SCHEMA schema_name RESTRICT;
DROP Table table_name CASCADE;

DROP命令有兩個(gè)名為CASCADE和RESTRICT的行為選項(xiàng)。當(dāng)CASCADE用于DROP模式時(shí),它會(huì)刪除所有相關(guān)元素,如模式,域和約束中的所有表。

當(dāng)我們使用CASCADE從架構(gòu)中刪除表時(shí),它會(huì)刪除所有約束,視圖以及引用正在刪除的關(guān)系的元素。

注:無法刪除任何外鍵約束引用的表。

DELETE和DROP的主要區(qū)別

1、DELETE是一個(gè)數(shù)據(jù)操作語言命令,而DROP是一個(gè)數(shù)據(jù)定義語言命令。

2、DELETE命令用于從表中刪除部分或全部元組。而,DROP命令用于從數(shù)據(jù)庫中刪除一個(gè)或多個(gè)表,可以刪除表的所有相關(guān)數(shù)據(jù),索引,觸發(fā)器,約束和權(quán)限規(guī)范。

3、DELETE可以與WHERE子句一起使用,但DROP不能與任何命令一起使用。

4、可以使用DELETE命令執(zhí)行回滾操作,因?yàn)樗褂镁彌_區(qū);但在使用DROP命令的情況下無法操作回滾,因?yàn)樗苯犹幚韺?shí)際數(shù)據(jù)。。

5、由于DELETE命令不刪除表,因此不會(huì)釋放任何空間;而drop命令會(huì)刪除整個(gè)表,從而釋放內(nèi)存空間。

以上就是SQL中的DELETE和DROP的詳細(xì)內(nèi)容了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI