Ta bort vs Släpp
Både Delete- och Drop-kommandon tillhör SQL-uttalanden (Structured Query Language) och de används för att ta bort data från en databas. Radera är ett DML-kommando (Data Manipulation Language). Det raderar en del eller alla data från en tabell enligt det villkor som användaren har angett. Ta bort uttalande tar bara bort dataposterna i tabellen, men tabellstrukturen presenterar densamma i databasen. Drop-kommandot är ett DDL-uttalande (Data Definition Language), och det fungerar på ett annat sätt än kommandot Ta bort. Det är inte ett villkorligt baserat uttalande, så raderas hela data från tabellen, det tar också bort tabellstrukturen och alla referenser till den tabellen permanent från databasen.
Radera uttalande
Som nämnts ovan tar Delete-satsen bort data från en tabell baserat på det angivna villkoret, och Where-satsen används med Delete för att specificera detta nödvändiga villkor. Om Where-satsen inte anges med Delete tas all tabellinformation bort från tabellen. I Delete-åtgärden förblir dock den befintliga tabellstrukturen densamma. Därför behöver inte användaren definiera tabellstrukturen om han / hon vill återanvända tabellen igen. Eftersom Delete är ett DML-kommando, begår det inte automatiskt efter körning. Så detta kan rullas tillbaka för att ångra den tidigare åtgärden. Annars bör åtagandet om åtagande kallas för att göra ändringarna permanenta. Medan Delete-satsen körs registreras en post i transaktionsloggen för varje radradering. Så detta påverkar att sakta ner operationen. Också,det återplacerar inte det utrymme som används efter körning.
Följande är syntax för Delete-uttalande.
RADERA FRÅN
eller
RADERA FRÅN VAR
Släpp uttalande
Drop statement tar inte bara bort alla tabellposter från databasen utan några villkor utan det tar också bort tabellstrukturen, integritetsbegränsningar, index 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 datalistan. Så om användaren vill återanvända tabellen måste han / hon definiera tabellstrukturen och alla andra referenser till tabellen igen. Släpp är ett DDL-kommando och efter körningen av kommandot kan det inte rullas tillbaka igen eftersom Drop-kommandot använder ett automatiskt åtagande. Därför bör användaren vara mycket försiktig med att använda detta kommando. Drop-uttalande kan inte tillämpas på systemtabeller, och det kan inte heller användas för de tabeller som har utländska nyckelbegränsningar.
Drop-kommandot kan inte bara användas för SQL-tabeller utan också för databaser, vyer och tabellkolumner, och all data som lagras i dessa objekt förloras för alltid tillsammans med objekten.
Följande är den typiska syntaxen för Drop-kommandot.
SLÄPP BORD
Vad är skillnaden mellan Radera och Släpp? 1. Radera och släpp-kommandon tar bort tabelldata från en databas. 2. Men Delete-uttalandet utför villkorlig radering, medan Drop-kommandot raderar hela poster i tabellen. 3. Ta bort uttalandet tar också bara bort raderna i tabellen och det bevarar tabellstrukturen som densamma, medan Drop-kommandot tar bort alla data i tabellen och tabellstrukturen, och det tar också bort alla andra referenser från databasen. 4. Radera är ett DML-uttalande, medan Drop är ett DDL-kommando. Så, Delete-åtgärden kan rullas tillbaka och den görs inte automatiskt, medan Drop-operationen inte kan rullas tillbaka på något sätt eftersom det är ett auto-commitment. 5. Drop-kommandot kan inte användas i de tabeller som har hänvisats till av utländska nyckelbegränsningar, medan Delete-kommandot kan användas istället för det. 6. Drop-kommandot bör användas försiktigt med god förståelse jämfört med Delete-uttalandet i SQL-applikationer. |