Razlika između skraćivanja i brisanja

Stvaranje podataka i manipulacija čine osnovu baza podataka i nazivamo ih DDL odnosno DML. DDL je kratica za jezik definicije podataka. Mogla je ili stvoriti ili izmijeniti podatkovne strukture u bazama podataka i one se ne mogu koristiti za promjenu podataka koji su prisutni u tablicama. Na primjer, imamo naredbe koje upravo stvaraju tablicu s navedenim atributima tablice, ali ona nikada ne dodaje retke u tablicu. Ali DML, jezik upravljanja podacima, može dodavati, brisati ili mijenjati podatke u tablicama. Općenito se pravilo DDL naredbe bavi strukturama tablice dok se naredbe DML bave stvarnim podacima. Neka to bude, zašto upravo odstupamo od teme „Razlika između skraćivanja i brisanja“? Postoje razlozi da smo razgovarali o DML-u i DDL-u. Shvatili biste to u narednoj raspravi.

Što je Truncate naredba?

Svrha Truncate naredbe je brisanje cijele tablice. Dakle, kada koristite Truncate naredbu, izgubit ćete sve podatke na tablici i trebali biste biti oprezni u uporabi. Javite nam kako ga koristiti.

Sintaksa Truncate:

TRUNCATNA TABELA stolni ime;

Ovdje biste trebali navesti naziv tablice koju bi trebalo izbrisati u cjelini. To osigurava da će u memorijskom prostoru sjesti bilo koji stol. Evo primjera upotrebe Truncate-a.

Ispod je tablica 'zaposlenika' i samo pogledajte redove podataka u njoj.

EMP id EMP-name oznaka
1011 utičnica službenik
1012 ružičast Admin
1014 Nancy Financije

Sada, izdajmo naredbu ispod na stolu zaposlenika.

TRUNCATNA TABELA zaposlenik;

Evo rezultata gornje sintakse i u njemu nema podataka.

EMP id EMP-name oznaka

Što je naredba za brisanje?

Svrha naredbe Delete jest uklanjanje određenih redaka iz tablice. Ovdje se upotrebljava klauzula "Gdje" za određivanje redaka koje je potrebno izbrisati. Kada ne odredimo retke, naredba bi izbrisala sve retke u tablici. Pogledajte samo njegovu sintaksu.

IZUZETI OD zaposlenik;

Gornja sintaksa briše sve retke iz tablice 'zaposlenika'. Dakle, rezultirajuća tablica ne bi sadržavala podatke.

IZUZETI OD zaposlenik GDJE emp-id = 1011;

Ova izjava samo briše jedan redak čiji je emp-ID 1011. Dakle, rezultirajuća tablica bila bi u nastavku.

EMP id EMP-name oznaka
1012 ružičast Admin
1014 Nancy Financije

Razlike:

  • Truncate je DDL; Brisanje je DML: Gore smo raspravljali o načinu na koji DDL i DML djeluju u našoj gornjoj raspravi. Naredba Truncate je DDL i djeluje na razini strukture podataka. Ali Delete je naredba DML i djeluje na podacima tablice. Ostali primjeri za DDL su CREATE i ALTER. Na sličan način, mogli bismo reći da su naredbe poput SELECT, UPDATE i INSERT savršeni primjeri za DML.
  • Kako djeluju skraćivanje i brisanje: Čim izdajemo Truncate naredbu, ona samo traži navedenu tablicu. Tada u potpunosti uklanja sve podatke iz memorije. No, postupak brisanja je malo drugačiji u slučaju brisanja. Ovdje se izvorni podaci tablice kopiraju u prostor koji se zove prostor "Povrati" prije nego što se izvrši stvarna manipulacija podacima. Tada se izmjene vrše na stvarnom prostoru podataka tablice. Dakle, obojica se razlikuju u načinu rada.

Skratiti -> ukloni cijele podatke iz tablice -> Prostor tablice je sada oslobođen.

Izbrisati -> Kopirajte izvorne podatke tablice u prostor za povratak -> izbrišite navedene podatke / cijelu tablicu -> Prostor tablice je oslobođen, ali prostor za povratak je ispunjen.

  • Povrat: Povratak je poput naredbe za poništavanje u našoj Microsoftovoj dodaci. Koristi se za poništavanje promjena koje smo nedavno napravili, tj. Od posljednje spremljene točke. Da biste izvršili operaciju, podaci bi se trebali kopirati u prostor povrata prije nego što se uređuju. Iako je ovim Roll leđima potrebno više memorije, vrlo su korisni za povratak originalu. Pogotovo kad greškom uređujete! Dođite nam do Truncatea i Delete-a u odnosu na Roll back. Kao što smo gore raspravljali, Truncate nikad ne koristi prostor povratnog vraćanja i nismo se mogli vratiti izvornim podacima. Ali naredba Delete koristi prostor povratnog vraćanja i mogli bismo jednostavno upotrijebiti 'Obavi' ili 'RollBack' za prihvaćanje ili otkazivanje promjena.
  • okidači: Za one kojima je potrebno objašnjenje o okidačima, ovdje je mala napomena. Okidači su unaprijed određeni skup operacija / operacija koji bi se trebali aktivirati kada tablica naiđe na određeno stanje. Na primjer, mogli bismo pokrenuti promjenu iznosa plaća kada je iskustvo zaposlenika s tvrtkom duže od godinu dana. Ti bi okidači mogli funkcionirati i na drugim tablicama. Na primjer, mogli bismo ažurirati tablicu financija čim se poveća plata za zaposlenika.

Skraćivanje je naredba DDL, okidač ovdje nije dopušten. Ali Delete je naredba DML, Okidači su ovdje dopušteni.

  • Što je brže? Kao što ste nagađali, naredba Truncate bila bi brža od naredbe Delete. Prvi bi mogao ukloniti sve podatke i nema potrebe provjeriti bilo kakve uvjete podudaranja. Također, izvorni podaci se ne kopiraju u povratni prostor i to štedi puno vremena. Ova dva faktora čine da Truncate djeluje brže od Delete-a.
  • Možemo li upotrijebiti odredbu GDJE? Odredba 'Gdje' koristi se za određivanje određenih uvjeta podudaranja i nije povezana sa skraćenicom. Kako Truncate nikada ne traži nijedne odgovarajuće uvjete, a samo uklanja sve redove, ovdje ne možemo upotrijebiti odredbu "Gdje". Ali uvjet bismo uvijek mogli odrediti pomoću klauzule 'gdje' u naredbi Delete.
  • Koji zauzima više prostora? Dvoboj neće koristiti prostor za povrat i to štedi tu memoriju. Ali za brisanje je potrebna sigurnosna kopija u obliku povratnog prostora i stoga zahtijeva više memorijskog prostora od skraćenja.

To su razlike, a pogledajmo ih tabelarno.

S.No Razlike u Skratiti Izbrisati
1. DDL ili DML? To je DDL i djeluje na razini strukture podataka. Ostali primjeri za DDL su CREATE i ALTER. To je naredba DML i djeluje na podatke tablice. DML označava jezik manipulacije podacima. Naredbe poput SELECT, UPDATE i INSERT savršeni su primjeri za DML. DML označava jezik manipulacije podacima.

2. Kako radi? Čim izdajemo Truncate naredbu, ona samo traži navedenu tablicu. Tada u potpunosti uklanja sve podatke iz memorije. Ovdje se izvorni podaci tablice kopiraju u prostor koji se zove prostor "Povrati" prije nego što se izvrši stvarna manipulacija podacima. Tada se izmjene vrše na stvarnom prostoru podataka tablice.
3. Rollback Naredba Truncate nikada ne koristi razmak unatrag i ne možemo se vratiti izvornim podacima. Povratni prostor je ekskluzivan i zauzima se kada se izdaju DML naredbe. Naredba Delete upotrebljava prostor za povratak, a mi jednostavno možemo upotrijebiti "Obredi" ili "RollBack" za prihvaćanje ili otkazivanje promjena.

4. okidači Skraćivanje je DDL naredba, okidači nisu dopušteni. Delete je naredba DML, ovdje su dozvoljeni okidači.

5. Što je brže? Moglo bi ukloniti sve podatke i nema potrebe provjeriti bilo kakve uvjete podudaranja. Također, izvorni podaci se ne kopiraju u povratni prostor i to štedi puno vremena. Ova dva faktora čine da Truncate djeluje brže od Delete-a.

Koristi povratni prostor i na njemu se moraju zadržati izvorni podaci. To je dodatno opterećenje i zauzvrat oduzima puno vremena nego Truncate.
6. Možemo li upotrijebiti odredbu GDJE? Kako Truncate nikada ne traži bilo kakve odgovarajuće uvjete, a samo uklanja sve redove, ovdje ne bismo mogli upotrijebiti odredbu "Gdje". Ali uvjet bismo uvijek mogli odrediti pomoću klauzule 'gdje' u naredbi Delete.
7. Koji zauzima više prostora? Dvoboj neće koristiti prostor za povrat i to štedi tu memoriju. Potrebna je sigurnosna kopija u obliku povratnog prostora i stoga joj treba više memorijskog prostora od skraćivanja.

Poznavanje razlika između bilo koja dva entiteta proširuje znanje o oba! Sletjeli ste na pravi put, tj. Web stranicu da biste razumjeli razlike, posebno između naredbi skraćivanja i brisanja. Nadam se da vam je sada jasno zbog njegovih razlika i javite nam jesmo li vam pomogli da to shvatite. Možete nam također pomoći da istaknemo što je ostalo!