數(shù)據(jù)庫(kù)中delete和drop的區(qū)別 SQL語(yǔ)句里delete和drop有什么區(qū)別?
SQL語(yǔ)句里delete和drop有什么區(qū)別?1、刪除:只刪除數(shù)據(jù),不刪除表的結(jié)構(gòu)。2Drop:這個(gè)句子將刪除表結(jié)構(gòu)所依賴(lài)的約束、觸發(fā)器和索引。2、 聲明的效果是不同的。1Delete:數(shù)據(jù)庫(kù)操作語(yǔ)言
SQL語(yǔ)句里delete和drop有什么區(qū)別?
1、刪除:只刪除數(shù)據(jù),不刪除表的結(jié)構(gòu)。2Drop:這個(gè)句子將刪除表結(jié)構(gòu)所依賴(lài)的約束、觸發(fā)器和索引。2、 聲明的效果是不同的。1Delete:數(shù)據(jù)庫(kù)操作語(yǔ)言(DML)。此操作將被放入回滾段,并且僅在提交事務(wù)后生效。如果有相應(yīng)的觸發(fā)器,則會(huì)在執(zhí)行過(guò)程中觸發(fā)。2Drop:數(shù)據(jù)庫(kù)定義語(yǔ)言(DDL)。行動(dòng)立即生效。如果原始數(shù)據(jù)未放入回滾段,則無(wú)法回滾。該操作不會(huì)觸發(fā)。3、 刪除:不影響表占用的范圍,高水印保持不變。2Drop:語(yǔ)句釋放表所占用的所有空間。來(lái)源:-SQL語(yǔ)句來(lái)源:-SQL語(yǔ)句
差異:
1。區(qū)別于刪除內(nèi)容:truncate and delete only delete data without delete table structure(definition)drop語(yǔ)句將刪除表結(jié)構(gòu)、依賴(lài)約束、觸發(fā)器和索引依賴(lài)于此表的存儲(chǔ)過(guò)程/函數(shù)將被保留,但將變?yōu)闊o(wú)效。
2。區(qū)別于語(yǔ)句類(lèi)型:delete語(yǔ)句為DML,此操作將被放入回滾段,只有事務(wù)提交后才生效。如果有相應(yīng)的觸發(fā)器,則會(huì)在執(zhí)行過(guò)程中觸發(fā)。Truncate,drop為DDL,操作立即生效,原始數(shù)據(jù)不會(huì)分段放入回滾段,不能回滾。操作不會(huì)觸發(fā)。
3。區(qū)別對(duì)表空間的影響:delete語(yǔ)句不影響表所占用的擴(kuò)展數(shù)據(jù)塊;high watermark保持原來(lái)的位置;drop語(yǔ)句釋放表所占用的所有空間;truncate語(yǔ)句釋放空間到minitentents以防遺漏,除非一般使用重用,drop> truncate>刪除
~下降:v.下降滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴滴刪除:vt.delete
數(shù)據(jù)庫(kù)中drop和delete的區(qū)別?
數(shù)據(jù)庫(kù)drop命令和delete命令的本質(zhì)區(qū)別主要在于觸發(fā)條件、用法和執(zhí)行速度。詳情如下:
1。觸發(fā)條件不同
delete語(yǔ)句是數(shù)據(jù)庫(kù)操作語(yǔ)言(DML)。此操作將被放入回滾會(huì)話(huà),并在事務(wù)提交后生效。在執(zhí)行過(guò)程中會(huì)觸發(fā)相應(yīng)的觸發(fā)器。
Drop是數(shù)據(jù)庫(kù)定義語(yǔ)言(DDL),操作立即生效,原始數(shù)據(jù)未放入回滾段,無(wú)法回滾,操作不觸發(fā)。
2. 不同用法
刪除只刪除內(nèi)容和空間,不刪除定義。Delete可以同時(shí)刪除行數(shù)據(jù)和整表數(shù)據(jù)。
Drop是刪除內(nèi)容和定義并釋放空間。執(zhí)行drop語(yǔ)句將同時(shí)刪除此表的結(jié)構(gòu)。
3. drop的執(zhí)行速度高于delete。
delete的執(zhí)行速度低于drop。
當(dāng)您不再需要桌子時(shí),請(qǐng)使用drop。
如果仍要保留表,但要?jiǎng)h除所有記錄,請(qǐng)使用truncate。
如果要?jiǎng)h除某些記錄(始終在聲明處切換),請(qǐng)使用delete。
參考源: