Razlika između ispuštanja i skraćivanja

Razlika između ispuštanja i skraćivanja
Razlika između ispuštanja i skraćivanja

Video: Razlika između ispuštanja i skraćivanja

Video: Razlika između ispuštanja i skraćivanja
Video: Can Bsc, MSc, Bcom, Mcom, BBA, BA, MA, BE, BTech CSE, ,ME, MTech IT Candidates eligible to enter SAP 2024, Studeni
Anonim

Drop vs Truncate

Drop i Truncate dvije su SQL (Structured Query Language) naredbe koje se koriste u sustavima upravljanja bazama podataka, gdje želimo ukloniti zapise podataka iz baze podataka. I naredbe Drop i Truncate uklanjaju cjelokupne podatke u tablici i povezanu SQL naredbu. Operacija brisanja nije učinkovita u ovom slučaju jer koristi više prostora za pohranu od Drop i Truncate.

U slučaju, ako želimo odbaciti tablicu u bazi podataka zajedno sa svim podacima, SQL nam omogućuje da to jednostavno izvedemo pomoću naredbe Drop. Drop naredba je DDL (Data Definition Language) naredba, a može se koristiti za uništavanje postojeće baze podataka, tablice, indeksa ili prikaza. Briše sve informacije u tablici, kao i strukturu tablice iz baze podataka. Također, možda ćemo se poželjeti jednostavno riješiti svih podataka u tablici, ali bez tablice, au takvom scenariju možemo koristiti naredbu Truncate u SQL-u. Truncate je također DDL naredba i eliminira sve retke u tablici, ali čuva definiciju tablice za buduću upotrebu.

Naredba ispuštanja

Kao što je ranije spomenuto, naredba Drop uklanja definiciju tablice i sve njezine podatke, ograničenja integriteta, indekse, okidače i povlastice pristupa, koji su stvoreni na toj određenoj tablici. Dakle, u potpunosti ispušta postojeći objekt iz baze podataka, a odnosi s drugim tablicama također više neće biti valjani nakon izvršavanja naredbe. Također uklanja sve informacije o tablici iz rječnika podataka. Slijedi tipična sintaksa za korištenje naredbe Drop na tablici.

DROP TABLICA

Moramo jednostavno zamijeniti naziv tablice koju želimo ukloniti iz baze podataka u gornjem primjeru naredbe Drop.

Važno je istaknuti da se naredba Drop ne može koristiti za brisanje tablice koja je već navedena ograničenjem stranog ključa. U tom slučaju, referentno ograničenje stranog ključa ili ta određena tablica treba prvo biti ispuštena. Također, naredba Drop se ne može primijeniti na sistemske tablice u bazi podataka.

Budući da je naredba Drop izjava o automatskom uređivanju, jednom pokrenuta operacija ne može se vratiti nazad i nijedan okidač neće biti aktiviran. Kada se tablica ispusti, sve reference na tablicu neće biti važeće, pa, ako želimo ponovno koristiti tablicu, mora se ponovno stvoriti sa svim ograničenjima integriteta i privilegijama pristupa. Svi odnosi s drugim tablicama također se moraju ponovno locirati.

Naredba za skraćivanje

Truncate naredba je DDL naredba i uklanja sve retke u tablici bez ikakvih uvjeta koje je odredio korisnik i oslobađa prostor koji koristi tablica, ali struktura tablice sa svojim stupcima, indeksima i ograničenjima ostaje ista. Truncate eliminira podatke iz tablice oslobađanjem podatkovnih stranica koje se koriste za pohranjivanje podataka tablice, a samo se te delokacije stranica čuvaju u dnevniku transakcija. Stoga koristi manje resursa dnevnika transakcija i resursa sustava u usporedbi s drugim povezanim SQL naredbama poput Delete. Dakle, Truncate je malo brža izjava od ostalih. Slijedi tipična sintaksa za naredbu Truncate.

KRIŠI TABLICU

Trebali bismo zamijeniti naziv tablice, iz koje želimo ukloniti sve podatke, u gornjoj sintaksi.

Truncate se ne može koristiti na tablici koja je navedena ograničenjem stranog ključa. Automatski koristi commit prije nego što djeluje i još jedan commit nakon toga tako da je vraćanje transakcije nemoguće i da se ne aktiviraju nikakvi okidači. Ako želimo ponovno koristiti tablicu, trebamo samo pristupiti postojećoj definiciji tablice u bazi podataka.

Koja je razlika između Drop i Truncate?

I Drop i Truncate naredbe su DDL naredbe i također automatske izjave tako da se transakcije izvedene pomoću ovih naredbi ne mogu vratiti nazad.

Primarna razlika između Drop i Truncate je u tome što naredba Drop uklanja ne samo sve podatke u tablici, već i trajno uklanja strukturu tablice iz baze podataka sa svim referencama, dok naredba Truncate uklanja samo sve retke u tablici i čuva strukturu tablice i njezine reference.

Ako se tablica ispusti, odnosi s drugim tablicama više neće biti valjani, a ograničenja integriteta i privilegije pristupa također će biti uklonjene. Dakle, ako se tablica zahtijeva za ponovnu upotrebu, mora se rekonstruirati s odnosima, ograničenjima cjelovitosti, a također i povlasticama pristupa. Ali ako je tablica skraćena, struktura tablice i njezina ograničenja ostaju za buduću upotrebu, tako da nijedna od gornjih rekreacija nije potrebna za ponovnu upotrebu.

Kada se ove naredbe primjenjuju, moramo biti oprezni kada ih koristimo. Također, trebali bismo imati bolje razumijevanje prirode ovih naredbi, kako rade, kao i pažljivo planiranje prije njihove upotrebe kako bismo spriječili propuštanje bitnih stvari. Konačno, obje ove naredbe mogu se koristiti za brzo i jednostavno čišćenje baza podataka, trošeći manje resursa.

Preporučeni: