Forskellen Mellem Sletning Og Afkortning

Forskellen Mellem Sletning Og Afkortning
Forskellen Mellem Sletning Og Afkortning

Video: Forskellen Mellem Sletning Og Afkortning

Video: Forskellen Mellem Sletning Og Afkortning
Video: The Movie Great Pyramid K 2019 - Director Fehmi Krasniqi 2024, Marts
Anonim

Slet vs Afkort

Begge SQL-kommandoer (Structure Query Language), Delete og Truncate bruges til at slippe af med data, der er gemt i tabeller i en database. Slet er en DML-erklæring (Data Manipulation Language), og den fjerner nogle eller alle rækkerne i en tabel. 'Hvor-klausulen' bruges til at specificere de rækker, der skal slettes, og hvis Hvor-klausulen ikke bruges med Delete-sætningen, fjernes alle data i tabellen. Truncate er en DDL-erklæring (Data Definition Language), og den fjerner hele data fra tabellen. Begge disse kommandoer ødelægger ikke tabelstrukturen og referencerne til tabellen, og kun dataene fjernes efter behov.

Slet erklæring

Slet-sætning giver brugeren mulighed for at fjerne data fra en eksisterende tabel i en database baseret på en bestemt tilstand, og 'Hvor-klausulen' bruges til at bestemme denne tilstand. Slet kommando kaldes en logget udførelse, fordi den kun sletter én række ad gangen og holder en post for hver række sletning i transaktionsloggen. Så dette får processen til at gøre langsommere. Slet er en DML-sætning, og den begås derfor ikke automatisk, når kommandoen udføres. Derfor kan Slet-handling rulles tilbage for at få adgang til dataene igen, hvis det kræves. Efter udførelse af Slet-kommandoen skal den begås eller rulles tilbage for at gemme ændringer permanent. Slet sætning fjerner ikke tabellens struktur i tabellen fra databasen. Det handler heller ikke om den hukommelsesplads, der bruges af tabellen.

Den typiske syntaks for kommandoen Slet er angivet nedenfor.

SLET FRA

eller

SLET FRA HVOR

Afkort erklæring

Truncate-sætning fjerner alle data fra en eksisterende tabel i en database, men den bevarer den samme tabelstruktur, også integritetsbegrænsninger, adgangsrettigheder og forholdet til andre tabeller. Så det er ikke nødvendigt at definere tabellen igen, og den gamle tabelstruktur kan bruges, hvis brugeren ønsker at genbruge tabellen igen. Truncate fjerner hele data ved at omplacere de datasider, der bruges til at opbevare data, og kun disse sideaftaler placeres i transaktionsloggen. Derfor bruger trunkeringskommando kun færre system- og transaktionslogressourcer til drift, så den er hurtigere end andre relaterede kommandoer. Truncate er en DDL-kommando, så den bruger automatiske forpligtelser før og efter udførelsen af erklæringen. Derfor kan trunkering ikke rulle dataene tilbage på nogen måde. Det frigiver hukommelsesplads, der bruges af tabellen efter udførelsen. Men Truncate-sætning kan ikke anvendes på de tabeller, der er henvist til af udenlandske nøglebegrænsninger.

Følgende er den fælles syntaks for Truncate-sætning.

TRUNCATE TABLE

Hvad er forskellen mellem Slet og Afkort?

1. Slet og trunker kommandoer fjern data fra eksisterende tabeller i en database uden at skade tabelstrukturen eller andre referencer til tabellen.

2. Kommandoen Slet kan dog kun bruges til at slette bestemte rækker i en tabel ved hjælp af en relevant betingelse eller til at slette alle rækkerne uden nogen betingelse, mens kommandoen Trunker kun kan bruges til at slette hele data i tabellen.

3. Slet er en DML-kommando, og den kan om nødvendigt rulle operationen tilbage, men Truncate er en DDL-kommando, så det er en automatisk forpligtelseserklæring og kan ikke rulles tilbage på nogen måde. Så det er vigtigt at bruge denne kommando omhyggeligt i databasestyring.

4. Afkortningshandling bruger færre systemressourcer og transaktionslogressourcer end Slet-operationen, derfor betragtes Truncate som hurtigere end Slet.

5. Sletteplacerer heller ikke plads, der bruges af tabellen, mens Truncate frigør den plads, der er brugt efter udførelse, så Delete er ikke effektiv i tilfælde af at slette hele data fra en databasetabel.

6. Truncate er dog ikke tilladt at bruge, når der henvises til tabellen af en fremmed nøglebegrænsning, og i så fald kan Delete-kommandoen bruges i stedet for Truncate.

7. Endelig har begge disse kommandoer fordele og ulemper ved at anvende dem i Database Management Systems, og brugeren skal være opmærksom på at bruge disse kommandoer korrekt for at opnå gode resultater.

Anbefalet: