Skillnaden Mellan Radera Och Avkorta

Skillnaden Mellan Radera Och Avkorta
Skillnaden Mellan Radera Och Avkorta

Video: Skillnaden Mellan Radera Och Avkorta

Video: Skillnaden Mellan Radera Och Avkorta
Video: 10 Inställningar du MÅSTE stänga av på din telefon!!!!! 2024, Mars
Anonim

Radera vs Trunkera

Båda SQL-kommandona (Structure Query Language), Delete och Truncate används för att bli av med data som lagras i tabeller i en databas. Delete är ett DML-uttalande (Data Manipulation Language) och det tar bort några eller alla raderna i en tabell. 'Var-satsen' används för att specificera de rader som måste tas bort, och om Where-satsen inte används med Delete-satsen tar den bort alla data i tabellen. Truncate är ett DDL-uttalande (Data Definition Language) och tar bort hela data från tabellen. Båda dessa kommandon förstör inte tabellstrukturen och referenserna till tabellen, och endast data tas bort efter behov.

Radera uttalande

Ta bort uttalande gör det möjligt för användaren att ta bort data från en befintlig tabell i en databas baserat på ett angivet tillstånd, och 'Var-satsen' används för att bestämma detta tillstånd. Radera-kommandot kallas en loggad körning, eftersom den bara tar bort en rad åt gången och behåller en post för varje radradering i transaktionsloggen. Så detta gör att operationen blir långsammare. Radera är ett DML-uttalande och det görs därför inte automatiskt när kommandot körs. Därför kan Delete-åtgärden rullas tillbaka för att komma åt data igen, om det behövs. Efter körning av Delete-kommandot ska det göras eller rullas tillbaka för att spara ändringar permanent. Radera uttalande tar inte bort tabellstrukturen i tabellen från databasen. Det omvandlar inte heller minnesutrymmet som används av tabellen.

Den typiska syntaxen för Delete-kommandot anges nedan.

RADERA FRÅN

eller

RADERA FRÅN VAR

Avkortat uttalande

Truncate-uttalande tar bort all data från en befintlig tabell i en databas, men den bevarar samma tabellstruktur, även integritetsbegränsningar, åtkomstbehörigheter och förhållandena till andra tabeller. Så det är inte nödvändigt att definiera tabellen igen, och den gamla tabellstrukturen kan användas om användaren vill återanvända tabellen igen. Truncate tar bort hela data genom att omplacera datasidorna som används för att behålla data, och endast dessa sidavdelningar sparas i transaktionsloggen. Därför använder trunkerat kommando bara färre system- och transaktionsloggresurser för operation, så det är snabbare än andra relaterade kommandon. Truncate är ett DDL-kommando, så det använder automatiska åtaganden före och efter genomförandet av uttalandet. Därför kan trunkera inte rulla tillbaka data igen på något sätt. Det frigör minne som används av tabellen efter körningen. Men Truncate-uttalande kan inte tillämpas på tabellerna som hänvisas till av utländska nyckelbegränsningar.

Följande är den vanliga syntaxen för Truncate-uttalande.

TRUNCATE BORD

Vad är skillnaden mellan Radera och Avkorta?

1. Radera och avkorta kommandon ta bort data från befintliga tabeller i en databas utan att skada tabellstrukturen eller andra referenser till tabellen.

2. Kommandot Radera kan dock användas för att ta bort specifika rader endast i en tabell med ett relevant tillstånd, eller för att radera alla rader utan något villkor, medan kommandot Trunka bara kan användas för att radera hela data i tabellen.

3. Radera är ett DML-kommando, och det kan rulla tillbaka operationen om det behövs, men Truncate är ett DDL-kommando, så det är ett auto-engagemangsuttalande och kan inte rullas tillbaka på något sätt. Så det är viktigt att använda detta kommando noggrant i databashantering.

4. Trunkeringsåtgärd förbrukar färre systemresurser och transaktionsloggresurser än Delete-åtgärden. Truncate anses därför vara snabbare än Delete.

5. Radera omplacerar inte heller det utrymme som används av tabellen, medan Truncate frigör det utrymme som används efter körning, så Delete är inte effektivt om du tar bort hela data från en databastabell.

6. Truncate är dock inte tillåtet att använda när tabellen refereras till av en främmande nyckelbegränsning, och i så fall kan Delete-kommandot användas istället för Truncate.

7. Slutligen har båda dessa kommandon fördelar och nackdelar med att tillämpa dem i databashanteringssystem och användaren bör vara medveten om att använda dessa kommandon på lämpligt sätt för att uppnå goda resultat.

Rekommenderas: