Verschil tussen Delete en Drop

Anonim

Verwijderen versus Druppel

Beide Delete and Drop-opdrachten behoren tot de SQL-instructies (Structured Query Language) en ze zijn gebruikt bij het verwijderen van gegevens uit een database. Verwijderen is een DML (Data Manipulation Language) opdracht. Het verwijdert enkele of alle gegevens uit een tabel volgens de voorwaarde die de gebruiker heeft opgegeven. Delete statement verwijdert alleen de data records in de tabel, maar de tabel structuur geeft hetzelfde in de database. Drop commando is een DDL (Data Definition Language) verklaring, en het werkt op een andere manier dan de opdracht Delete. Het is geen voorwaardelijke verklaring, dus verwijdert u de volledige gegevens uit de tabel. Ook verwijdert u de tabelstructuur en alle verwijzingen naar die tabel permanent vanuit de database.

Verwijder Verklaring

Zoals hierboven vermeld, verwijdert de verklaring gegevens uit een tabel op basis van de voorwaarde die wordt verstrekt en wordt de Waar-clausule gebruikt met Verwijderen om deze vereiste conditie te specificeren. Als de Waar-clausule niet met Delete is vermeld, worden alle tabelgegevens van de tabel verwijderd. In de Delete-operatie blijft de bestaande tabelstructuur echter hetzelfde. Daarom behoeft de gebruiker de tabelstructuur niet te definiëren als hij / zij de tafel opnieuw wil gebruiken. Aangezien Verwijderen een DML-opdracht is, verbindt het zich niet automatisch na uitvoering. Zo kan dit terug worden gerold om de vorige operatie te ongedaan maken. Anders moet de Commit-verklaring worden gebeld om de wijzigingen permanent te maken. Tijdens het uitvoeren van de verwijderverklaring registreert het een vermelding in het transactielogboek voor elke rijverwijdering. Dit heeft dus gevolgen voor het vertragen van de operatie. Zo wordt de ruimte die na de uitvoering wordt gebruikt, niet toegewezen.

Hieronder volgt de syntaxis voor de verwijderde verklaring.

DELETE FROM

of

DELETE FROM WHERE

Drop Statement

Drop-statement verwijdert niet alleen alle tabelrecords uit de database zonder enige conditie, maar verwijdert ook de tabelstructuur, integriteitsbeperkingen, indexen en toegangsrechten van de relevante tabel uit de database permanent. Dus, alle relaties voor andere tabellen bestaan ​​niet meer, en informatie over de tabel wordt verwijderd uit het data woordenboek. Dus, als de gebruiker de tafel wil hergebruiken, moet hij de tabelstructuur en alle andere verwijzingen naar de tafel opnieuw definiëren. Drop is een DDL commando en na de uitvoering van het commando, kan het niet opnieuw worden gerold, omdat de Drop commando een automatische inzet gebruikt. Daarom moet de gebruiker zeer voorzichtig zijn met het gebruik van dit commando. Drop statement kan niet worden toegepast op systeemtabellen, en kan ook niet gebruikt worden voor de tabellen die vreemde sleutelbeperkingen hebben.

Druppelopdracht kan niet alleen voor SQL-tabellen worden gebruikt, maar ook voor databases, weergaven en tabelkolommen. Alle gegevens die in deze objecten zijn opgeslagen, worden voor altijd met de objecten verloren.

Hieronder volgt de typische syntaxis voor de opdracht Drop.

DROP TABLE

Wat is het verschil tussen Delete and Drop?

1. Verwijder en Drop-opdrachten verwijdert tabelgegevens uit een database.

2. Maar verwijderen-instructie voert voorwaardelijke verwijdering uit, terwijl de Drop-opdracht alle records in de tabel verwijdert.

3. Ook verwijderde verklaring verwijdert alleen de rijen in de tabel en het behoudt de tabelstructuur als hetzelfde, terwijl de opdracht Drop alle gegevens in de tabel en de tabelstructuur verwijdert, en verwijdert ook alle andere referenties uit de database.

4. Verwijderen is een DML-instructie, terwijl Drop een DDL-commando is. Zo kan de verwijderingsoperatie terug worden gerold en het is niet automatisch toegewijd, terwijl de Drop-operatie op geen enkele wijze terug kan worden gerold, aangezien het een automatisch geplaatste verklaring is.

5. Drop commando kan niet worden gebruikt op de tabellen die zijn verwezen door vreemde sleutel beperkingen, terwijl het verwijderen commando kan worden gebruikt in plaats daarvan.

6. Drop commando moet zorgvuldig worden gebruikt met een goed begrip in vergelijking met de Delete statement in SQL applicaties.