Skillnad mellan radera och släpp

Anonim

Radera mot Drop

Båda Radera och släppa kommandon tillhör SQL (Structured Query Language) används vid borttagning av data från en databas. Delete är ett DML (Data Manipulation Language) kommando. Det tar bort några eller alla data från ett bord enligt det villkor som användaren har angett. Delete statement tar bort endast dataposterna i tabellen, men tabellstrukturen presenterar samma i databasen. Slagkommandot är ett DDL-språk (Data Definition Language), och det fungerar på ett annat sätt än kommandot Delete. Det är inte ett villkorligt baserat uttalande, så raderar hela data från tabellen, även det tar bort tabellen struktur och alla referenser till den tabellen permanent från databasen.

Ta bort uttalande

Som nämnts ovan tar bort raderingsuppgifter bort från en tabell baserat på förutsatt villkor och Var-klausulen används med Delete för att ange detta villkor. Om Where-klausulen inte anges med Delete tas alla tabelldata bort från tabellen. Men i raderingsoperationen förblir den befintliga tabellstrukturen densamma. Därför behöver användaren inte definiera tabellstrukturen om han / hon vill återanvända bordet igen. Eftersom Delete är ett DML-kommando, åtar sig det inte automatiskt efter körning. Så kan detta rullas tillbaka för att ångra den tidigare operationen. I annat fall bör kommittéförklaringen kallas för att göra ändringarna permanenta. När du tar bort raderingsrapporteringen registreras det en post i transaktionsloggen om varje radering raderas. Så, detta påverkar att sakta ner operationen. Dessutom fördelar det inte utrymmet som används efter utförandet.

Följande är syntaxen för Radera.

SLUTA FRÅN

eller

DELETE FROM WHERE

Släppförklaring

Släppuppsättningen tar bort inte bara alla tabellposter från databasen utan något villkor, men också det tar bort bordstrukturen, integritetsbegränsningar, indexer och åtkomstbehörigheter för den relevanta tabellen från databasen permanent. Så, alla relationer för andra tabeller finns inte längre, och information om tabellen tas bort från datalogiken. Så, om användaren vill återanvända bordet måste han / hon definiera tabellstrukturen och alla andra referenser till bordet igen. Drop är ett DDL-kommando och efter utförandet av kommandot kan det inte rullas tillbaka igen, eftersom Drop-kommandot använder ett automatiskt engagemang. Användaren bör därför vara mycket försiktig när man använder det här kommandot. Drop statement kan inte tillämpas på system tabeller, och det kan inte användas för tabeller som har främmande nyckelbegränsningar.

Droppkommandot kan användas inte bara för SQL-tabeller, utan även för databaser, vyer och tabellkolumner, och all data som lagras i dessa objekt förloras alltid tillsammans med objekten.

Följande är den typiska syntaxen för Drop-kommandot.

DROP TABLE

Vad är skillnaden mellan Delete och Drop?

1. Radera och släppa kommandon tar bort tabelldata från en databas.

2. Men Delete-satsen utförs med villkorlig baserad borttagning, medan Drop-kommandot raderar hela poster i tabellen.

3. Ta bort raderingen tar bara bort raderna i tabellen och det bibehåller tabellstrukturen som samma, medan kommandot Dropp tar bort alla data i tabellen och tabellstrukturen, även den tar bort alla andra referenser från databasen.

4. Delete är ett DML-uttalande, medan Drop är ett DDL-kommando. Så, borttagning kan rullas tillbaka och det är inte automatiskt begagnat, medan droppoperation inte kan rullas tillbaka på något sätt, eftersom det är en automatisk begåvad uttalande.

5. Drop-kommandot kan inte användas på tabellerna som har refererats av främmande nyckelbegränsningar, medan Delete-kommandot kan användas istället för det.

6. Slagkommandot ska användas noggrant med en bra förståelse jämfört med raderingen i SQL-applikationer.