Forskjellen Mellom Slett Og Avkort

Forskjellen Mellom Slett Og Avkort
Forskjellen Mellom Slett Og Avkort

Video: Forskjellen Mellom Slett Og Avkort

Video: Forskjellen Mellom Slett Og Avkort
Video: Lang, langt og lenge 2024, Mars
Anonim

Slett vs Avkort

Begge SQL-kommandoene (Structure Query Language), Delete og Truncate brukes til å kvitte seg med data som er lagret i tabeller i en database. Delete er en DML (Data Manipulation Language) uttalelse, og den fjerner noen eller alle radene i en tabell. 'Hvor-setningen' brukes til å spesifisere radene som skal slettes, og hvis Hvor-setningen ikke brukes med Slett-setningen, fjerner den alle dataene i tabellen. Truncate er et DDL-utsagn (Data Definition Language), og det fjerner hele data fra tabellen. Begge disse kommandoene ødelegger ikke tabellstrukturen og referansene til tabellen, og bare dataene fjernes etter behov.

Slett uttalelse

Slett-setning lar brukeren fjerne data fra en eksisterende tabell i en database basert på en spesifisert tilstand, og "Hvor klausul" brukes til å bestemme denne tilstanden. Slett kommando blir referert til som en logget kjøring, fordi den bare sletter en rad om gangen, og holder en oppføring for hver radsletting i transaksjonsloggen. Så dette fører til at operasjonen blir tregere. Delete er en DML-setning, og derfor blir den ikke automatisk begått når kommandoen utføres. Derfor kan Delete-operasjonen rulles tilbake for å få tilgang til dataene igjen, om nødvendig. Etter utførelse av Delete-kommandoen, bør den forpliktes eller rulles tilbake for å lagre endringene permanent. Slett setning fjerner ikke tabellstrukturen til tabellen fra databasen. Det plasserer heller ikke minneplassen som brukes av tabellen.

Den typiske syntaksen for Delete-kommandoen er angitt nedenfor.

SLETT FRA

eller

SLETT FRA HVOR

Avkutt uttalelse

Truncate-setning fjerner alle dataene fra en eksisterende tabell i en database, men den bevarer den samme tabellstrukturen, også integritetsbegrensninger, tilgangsrettigheter og forholdet til andre tabeller. Så det er ikke nødvendig å definere tabellen igjen, og den gamle tabellstrukturen kan brukes hvis brukeren vil bruke bordet på nytt. Truncate fjerner hele dataene ved å distribuere datasidene som brukes til å oppbevare data, og bare disse sideavdelingsplasseringene blir lagret i transaksjonsloggen. Derfor bruker trunkeringskommandoen bare færre system- og transaksjonsloggressurser for drift, så den er raskere enn andre relaterte kommandoer. Truncate er en DDL-kommando, så den bruker automatiske forpliktelser før og etter gjennomføring av uttalelsen. Derfor kan avkorting ikke rulle tilbake dataene på nytt på noen måte. Den frigjør minneplass som brukes av tabellen etter utførelsen. Men Truncate-setning kan ikke brukes på tabellene som er referert til av utenlandske nøkkelbegrensninger.

Følgende er den vanlige syntaksen for Truncate-setningen.

TRUNKER BORD

Hva er forskjellen mellom Slett og Avkort?

1. Kommandoer for sletting og avkorting fjerner data fra eksisterende tabeller i en database uten å skade tabellstrukturen eller andre referanser til tabellen.

2. Imidlertid kan Delete-kommandoen brukes til å slette bestemte rader bare i en tabell ved hjelp av en relevant tilstand, eller til å slette alle radene uten noen tilstand, mens Truncate-kommandoen bare kan brukes til å slette hele data i tabellen.

3. Delete er en DML-kommando, og den kan rulle tilbake operasjonen om nødvendig, men Truncate er en DDL-kommando, så det er en automatisk forpliktelseserklæring og kan ikke rulles tilbake på noen måte. Så det er viktig å bruke denne kommandoen nøye i databasestyring.

4. Avkuttdrift bruker færre systemressurser og transaksjonsloggressurser enn Slett-operasjonen. Derfor blir Trunker betraktet som raskere enn Slett.

5. Slett distribuerer heller ikke plass som brukes av tabellen, mens Truncate frigjør plassen som brukes etter kjøring, slik at Delete ikke er effektiv i tilfelle du sletter hele dataene fra en databasetabell.

6. Truncate har imidlertid ikke lov til å bruke når det henvises til tabellen av en fremmed nøkkelbegrensning, og i så fall kan Delete-kommandoen brukes i stedet for Truncate.

7. Til slutt har begge disse kommandoene fordeler og ulemper ved å bruke dem i databasestyringssystemer, og brukeren bør være klar over å bruke disse kommandoene på riktig måte for å oppnå gode resultater.

Anbefalt: