To metoder finnes i SQL til tomme databasetabeller. Den ene er "SLETT "-funksjonen og den andre er " avkorte ". Både bevare integriteten av tabellen den munner , men hver er forskjellig i de mekanismene som brukes til å fjerne poster , spesielt med hensyn til driftsformer , gjenoppretting av data , hastighet og ressursbruk. "Delete" -funksjonen er kategorisert som en data (DML )-funksjonen mens " avkorte " tilhører familien av funksjoner som omhandler data definition language ( DDL ) . Driftsformer
" avkorte " operasjon er en alt- eller -ingenting tilnærming som deallocates diskplass reservert for data i tabellen . Operasjonen fjerner også pekere til indekser. Data fortsetter å eksistere i tabellen til de overskrives av nye data . Omvendt, fjerner " DELETE " operasjon én post om gangen , innspilling detaljene for hver post i en transaksjonsbasert log før fjerning sin . Den " DELETE " operasjon krever at transaksjonen skal være begått , mens en " avkorte " implisitt begår transaksjonen. A " DELETE " statement gjør det også mulig for brukeren å betinget fjerne postene som oppfyller visse kriterier.
Data Recovery
A " avkorte " operasjon fjerner data fra en tabellen uten å lagre noen tilbakeføring informasjon. Når kommandoen er utført, er utvinning ikke mulig hvis plassen tidligere avsatt til data har blitt overskrevet med nye data . Omvendt kan tilbakeføring til en tidligere tilstand i en " DELETE " operasjon oppstår fordi hver post er forpliktet til tilbakeføring tablespace før fjerning sin . Manglende data deretter kan utvinnes fra tilbakerullingsstrategi logger, forutsatt at loggene fortsatt eksisterer .
Speed -og ressursbruk
" avkorte " operasjon er en høyhastighets slettingen som krever lite databasen ressurser på grunn av hvilken modus den utfører alt - eller - ingenting sletting . "slett" operasjoner på store mengder data , på den annen side , kan ta lang tid på grunn av problemet med å samle inn én rad om gangen i rollback tabellplass . Som et resultat, kan den fysiske størrelsen på tabellene involvert ballong før fjerning av poster krympe tabellen tilbake til en akseptabel størrelse .
Unntak Angående referansebegrensninger
" ; avkorte "operasjoner kan bare skje hvis alle utenlandske viktige begrensninger er fjernet eller deaktivert før utførelsen. Den samme regelen gjelder for "SLETT " operasjoner . Dette skyldes regelen pålagt databaser for å definere primær- og utenlandske viktige relasjoner og som opplyser at "ingen fremmednøkkel skal dingle . " Derfor vil " avkorte " og "Delete "-operasjoner mislykkes hvis det er en primærnøkkel /fremmednøkkel begrensning på plass .