Forskjellen mellom DELETE og DROP i SQL

Forfatter: Laura McKinney
Opprettelsesdato: 1 April 2021
Oppdater Dato: 5 Kan 2024
Anonim
SQL DELETE vs TRUNCATE
Video: SQL DELETE vs TRUNCATE

Innhold


DELETE og DROP er kommandoene som brukes til å fjerne elementene i databasen. DELETE-kommando er en Data Manipulation Language-kommando, mens DROP er en Data Definition Language Command. Poenget som skiller DELETE og DROP-kommandoen er det DELETE brukes til å fjerne tuples fra et bord og MISTE brukes til å fjerne hele skjema, tabell, domene eller begrensninger fra databasen. La oss diskutere noen flere forskjeller mellom DELETE og DROP-kommandoen i SQL ved hjelp av sammenligningstabellen nedenfor.

Innhold: SLETT VED DROP

  1. Sammenligningstabell
  2. Definisjon
  3. Viktige forskjeller
  4. Konklusjon

Sammenligningstabell

Grunnlag for sammenligningDELETEMISTE
grunn~~POS=TRUNCSLETT Fjern noen eller alle tuplene fra et bord.DROP kan fjerne hele skjema, tabell, domene eller begrensninger fra databasen.
SpråkDELETE er en Data Manipulation Language-kommando.DROP er en Data Definition Language-kommando.
KlausulHVOR ledd kan brukes sammen med DELETE-kommandoen.Ingen ledd brukes sammen med DROP-kommandoen.
RollbackHandlinger utført av DELETE kan rulles tilbake.Handlinger utført av DROP kan ikke tilbakespilles.
RomSelv om du sletter alle tabellene på bordet med DELETE, frigjøres ikke plass som er plassert av bordet i minnet.Tabell slettet med DROP frigjør tabellplassen fra minnet.


Definisjon av DELETE

SLETT er en Datamanipuleringsspråk (DDL) kommando. DELETE-kommando brukes når du vil fjerne noen eller alle tuplene fra en relasjon. Hvis HVOR klausul brukes sammen med DELETE-kommandoen, den fjerner bare de tuplene som tilfredsstiller WHERE-klausulen.

Hvis HVOR klausul mangler i DELETE-uttalelsen, blir alle tuplene som standard fjernet fra forholdet, selv om forholdet som inneholder disse tuplene fremdeles eksisterer i skjemaet. Du kan ikke slette et helt forhold eller domener eller begrensninger ved å bruke DELETE-kommandoen.

Syntaksen til DELETE-kommandoen er som følger:

SLETT FRA relation_navn WHERE tilstand;

Hvis du kobler to tabeller ved å bruke en fremmed nøkkel og slette en tuple fra en referert tabell, vil automatisk tupelen fra referansetabellen også bli slettet for å opprettholde referanseintegritet.


For å opprettholde referanseintegritet har DELETE to atferdsalternativer, BEGRENSE og CASCADE. BEGRENSNING avvise sletting av tuple hvis det refereres til av en refererende tupel i en annen tabell. CASCADE tillater sletting av referanse-tupelen som refererer til tupelen som blir slettet.

Definisjon av DROP

DROP er en Datadefinisjonsspråk (DDL) kommando. DROP-kommandoen fjerner de navngitte elementene i skjemaet som relasjoner, domener eller begrensninger, kan du til og med fjerne en hel skjema ved å bruke DROP-kommando.

Syntaksen til DROP-kommandoen er som følger:

DROP SCHEMA skjemanavn RESTRICT;

DROP Tabell tabellnavn CASCADE;

DROP-kommandoen har to atferdsalternativer som heter CASCADE og BEGRENSE. Når CASCADE brukes til å DROP skjemaet, sletter det alle relaterte elementer som alle relasjoner i skjemaet, domener og begrensninger.

Når du bruker CASCADE for å fjerne et forhold (tabell) fra et skjema, sletter det alle begrensningene, visningene og også elementene som refererer til forholdet som blir slettet.

I tilfelle du DROP et skjema ved å bruke RESTRICT, kjøres DROP-kommandoen bare hvis ingen elementene i skjema er igjen. Hvis du dropper en tabell ved å bruke RESTRICT, vil DROP-kommandoen bare kjøres hvis ingen elementer i bord er igjen.

Viktige forskjeller mellom SLETT og DROP i SQL

  1. DELETE-kommando brukes til å fjerne noen eller alle tuplene fra bordet. På den annen side brukes DROP-kommandoen for å fjerne skjemaer, tabeller, domene eller begrensninger fra databasen.
  2. DELETE er en Data Manipulation Language-kommando, mens DROP er en Data Definition Language-kommando.
  3. DELETE kan brukes sammen med WHERE-leddet, men DROP brukes ikke sammen med noen kommando.
  4. Handlinger utført av DELETE-kommandoen kan rulles tilbake, men ikke i tilfelle DROP-kommando.
  5. Da DELETE-kommandoen ikke sletter tabellen, frigjøres ingen plass, mens DROP sletter hele tabellen frigjør minneplassen.


Konklusjon:

DELETE-kommando brukes til å slette radene i en tabell, og DROP-kommandoen brukes til å slette hele tabellen.