您好,登錄后才能下訂單哦!
SQL中的DELETE和DROP有什么區(qū)別?這篇文章運(yùn)用了實(shí)例代碼展示,代碼非常詳細(xì),可供感興趣的小伙伴們參考借鑒,希望對(duì)大家有所幫助。
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è)資訊!
免責(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)容。