Skillnaden mellan trunkera och radera

Författare: Laura McKinney
Skapelsedatum: 2 April 2021
Uppdatera Datum: 15 Maj 2024
Anonim
Difference between DELETE, TRUNCATE AND DROP in SQL.
Video: Difference between DELETE, TRUNCATE AND DROP in SQL.

Innehåll

Huvudskillnad

DELETE och TRUNCATE är två termer som används i SQL (Structured Query Language) för att ta bort posten eller data från en tabell. Även om slutresultatet av båda kommandona är detsamma, men det finns också vissa skillnader mellan dessa två som är viktiga att förstå. Den viktigaste skillnaden mellan DELETE och TRUNCATE är att DELTE är ett kommando för datahantering (DML) medan TRUNCATE är ett DDL-kommando (Data Definition Language).


Vad är TRUNCATE?

TRUNCATE är också en loggad operation. Satsen TRUNCATE TABLE är ett DDL-kommando i SQL som markerar omfattningen av en tabell för deallokalisering. Som ett resultat av denna operation tas alla data från tabellen bort direkt, vanligtvis förbi ett antal integritetshanteringsmekanismer. Det introducerades i SQL: 2008-standarden. Uttalandet "TRUNCATE TABLE mytable" motsvarar logiskt sett "DELETE FRA mytable" -satset utan en "WHERE" -bestämmelse. 'TRUNCATE TABLE' tar bort all information direkt i en tabell genom att dela om de datasidor som används i tabellen. Detta minskar resursomkostningen för att logga bort borttagningarna, såväl som antalet lås som krävs. Vi kan inte ange "WHERE" -bestämmelsen i en "TRUNCATE TABLE" -sats eftersom det är allt eller ingenting.

Vad är DELETE?

I databasen SQL betyder DELETE ett uttalande som tar bort en eller flera poster eller data från en tabell. En delmängd kan definieras för borttagning / radering med ett villkor för att ta bort alla poster. Vissa databashanteringssystem (DBM) som MySQL tillåter att radera rader från olika tabeller med ett DELETE-uttal som också kallas DELETE för flera tabeller. Syntaxen för DELETE-sats är DELETE FROM tabellnamn . Nu kommer alla rader som matchar villkoret 'WHERE' att raderas från tabellen. Om "WHERE" -klausulen utelämnas från uttalandet raderas alla rader i tabellen. Så "DELETE" -satsen ska användas med försiktighet. Dessutom ger uttalandet 'DELETE' inga rader; det är att det inte kommer att generera en resultatuppsättning.


Viktiga skillnader

  1. DELETE är ett Data Manipulation Language (DML) -kommando medan TRUNCATE är ett Data Definition Language (DDL) -kommando.
  2. TRUNCATE är mycket snabbare jämför med DELETE eftersom det direkt raderar all data.
  3. Villkoret "WHERE" krävs i DELETE. . Om "WHERE" -klausulen utelämnas från uttalandet raderas alla rader i tabellen. Men vi kan inte specificera "VAR" -bestämmelsen i en "TRUNCATE TABLE" -sats eftersom det är allt eller ingenting.
  4. DELETE tar bort några eller alla rader från en tabell medan TRUNCATE tar bort alla rader.
  5. DELETE får alla DELETE-triggers på bordet att avfyra medan inga triggers startas under TRUNCATE-drift eftersom det inte är tillämpligt på enskilda rader.
  6. Radera kan användas med indexerade vyer medan TRUNCATE inte kan användas med indexerade vyer.
  7. DELETE körs med ett radlås och varje rad i tabellen är låst för borttagning medan TRUNCATE utförs med hjälp av ett bordlås och alla tabeller är låsta för att ta bort alla poster.

Antingen är du en bourbon-dricker eller whikydrinkare, du måte veta den verkliga killnaden mellan dea två. Det finn många killnader om finn mellan bourbon och whiky.Den huvudakliga...

Skillnaden mellan Kosher och Halal

Laura McKinney

Maj 2024

Koher och halal aver livmedellagtiftning och är en oro för mulimer och judar. En del männikor tror att båda är medel för amma typ av mat, men verkligheten kiljer ig fr...

Artiklar För Dig