Verschil tussen DELETE en DROP in SQL
Inhoud
- Inhoud: DELETE versus DROP
- Vergelijkingstabel
- Definitie van VERWIJDEREN
- Definitie van DROP
- Belangrijkste verschillen tussen DELETE en DROP in SQL
DELETE en DROP zijn de opdrachten die worden gebruikt om de elementen van de database te verwijderen. DELETE commando is een Data Manipulation Language command, terwijl DROP een Data Definition Language Command is. Het punt dat de opdracht DELETE en DROP onderscheidt, is dat DELETE wordt gebruikt om tupels van een tafel te verwijderen en LATEN VALLEN wordt gebruikt om een volledig schema, tabel, domein of beperkingen uit de database te verwijderen. Laten we wat meer verschillen bespreken tussen de opdracht DELETE en DROP in SQL met behulp van onderstaande vergelijkingstabel.
Inhoud: DELETE versus DROP
- Vergelijkingstabel
- Definitie
- Belangrijkste verschillen
- Gevolgtrekking
Vergelijkingstabel
Basis voor vergelijking | DELETE | LATEN VALLEN |
---|---|---|
basis- | VERWIJDEREN verwijder enkele of alle tupels van een tafel. | DROP kan hele schema's, tabellen, domeinen of beperkingen uit de database verwijderen. |
Taal | DELETE is een opdracht voor gegevensmanipulatietaal. | DROP is een opdracht Data Definition Language. |
Clausule | WHERE-component kan worden gebruikt in combinatie met de opdracht DELETE. | Er wordt geen clausule gebruikt samen met de opdracht DROP. |
Terugrollen | Acties uitgevoerd door DELETE kunnen worden teruggedraaid. | Acties uitgevoerd door DROP kunnen niet worden teruggedraaid. |
Ruimte | Zelfs als u alle tupels van de tabel verwijdert met DELETE, wordt de ruimte die door de tabel in het geheugen wordt ingenomen niet vrijgegeven. | Tabel verwijderd met DROP maakt de tabelruimte vrij uit het geheugen. |
Definitie van VERWIJDEREN
VERWIJDEREN is een Data Manipulatie Taal (DDL) -opdracht. DELETE commando wordt gebruikt wanneer u wilt verwijderen sommige of alle tupels uit een relatie. Als WAAR wordt gebruikt in combinatie met de opdracht DELETE, het verwijdert alleen die tupels die voldoen aan de WHERE-voorwaarde.
Als de clausule WHERE ontbreekt in de instructie DELETE, worden standaard alle tuples uit de relatie verwijderd, hoewel de relatie met die tuples nog steeds in het schema bestaat. U kunt geen volledige relatie of domeinen of beperkingen verwijderen met de opdracht DELETE.
De syntaxis van de opdracht DELETE is als volgt:
VERWIJDER UIT relatie naam WHERE voorwaarde;
Als u twee tabellen koppelt met een vreemde sleutel en verwijder een tupel uit een tabel waarnaar wordt verwezen, dan wordt automatisch de tupel uit de tabel waarnaar wordt verwezen, verwijderd om de referentiële integriteit.
Om referentiële integriteit te behouden, heeft DELETE twee gedragsopties, BEPERKEN en CASCADE. RESTRICT weigert het verwijderen van tuple als er naar wordt verwezen door een referentietuple in een andere tabel. CASCADE staat verwijdering toe van de verwijzende tuple die verwijst naar de tuple die wordt verwijderd.
Definitie van DROP
DROP is een Gegevensdefinitietaal (DDL) -opdracht. Met de opdracht DROP worden de genoemde elementen van het schema verwijderd relaties, domeinen of beperkingen, u kunt zelfs een geheel verwijderen schema met behulp van de opdracht DROP.
De syntaxis van het DROP-commando is als volgt:
DROP SCHEMA schemanaam RESTRICT;
DROP Tabel tabelnaam CASCADE;
De opdracht DROP heeft twee genoemde gedragsopties CASCADE en BEPERKEN. Wanneer CASCADE wordt gebruikt om het schema te DROPEN, worden alle gerelateerde elementen verwijderd, zoals alle relaties in het schema, domeinen en beperkingen.
Wanneer u CASCADE gebruikt om een relatie (tabel) uit een schema te verwijderen, worden alle beperkingen, weergaven en ook de elementen verwijderd die verwijzen naar de relatie die wordt verwijderd.
In het geval dat u een schema DROP met behulp van RESTRICT, wordt de opdracht DROP alleen uitgevoerd als de elementen no in de schema zijn over. Als u een tabel DROP met behulp van RESTRICT, wordt de opdracht DROP alleen uitgevoerd als er geen elementen in de tafel zijn over.
Belangrijkste verschillen tussen DELETE en DROP in SQL
- DELETE commando wordt gebruikt om sommige of alle tupels uit de tabel te verwijderen. Aan de andere kant wordt de opdracht DROP gebruikt om een schema, tabel, domein of beperkingen uit de database te verwijderen.
- DELETE is een opdracht voor gegevensmanipulatietaal, terwijl DROP een opdracht voor gegevensdefinitietaal is.
- DELETE kan samen met de WHERE-component worden gebruikt, maar DROP wordt niet samen met een opdracht gebruikt.
- Acties die worden uitgevoerd met de opdracht DELETE kunnen worden teruggedraaid, maar niet in het geval van de opdracht DROP.
- Omdat de opdracht DELETE de tabel niet verwijdert, wordt er geen ruimte vrijgemaakt, terwijl DROP de hele tabel verwijdert en geheugenruimte vrijmaakt.
Gevolgtrekking:
De opdracht DELETE wordt gebruikt om de rijen in een tabel te verwijderen en de opdracht DROP wordt gebruikt om de volledige tabel zelf te verwijderen.