Razlika Med Brisanjem In Obrezovanjem

Razlika Med Brisanjem In Obrezovanjem
Razlika Med Brisanjem In Obrezovanjem

Video: Razlika Med Brisanjem In Obrezovanjem

Video: Razlika Med Brisanjem In Obrezovanjem
Video: Венера ▶ Яркая планета. Вид в Телескоп. Вечером в небе, как яркая звезда. Март 2020 2024, November
Anonim

Delete vs Truncate

Oba ukaza SQL (Structure Query Language), Delete in Truncate se uporabljata, da se znebite podatkov, shranjenih v tabelah v zbirki podatkov. Izbriši je stavek DML (jezik za upravljanje podatkov) in odstrani nekatere ali vse vrstice tabele. Stavek »Where« se uporablja za določanje vrstic, ki jih je treba izbrisati, in če se stavek Where ne uporablja z stavkom Delete, odstrani vse podatke v tabeli. Skrajšanje je stavek DDL (jezik za definicijo podatkov) in iz tabele odstrani celotne podatke. Oba ukaza ne uničita strukture tabele in sklicev na tabelo, po potrebi pa se odstranijo le podatki.

Izbriši izjavo

Stavek Delete uporabniku omogoča odstranitev podatkov iz obstoječe tabele v zbirki podatkov na podlagi določenega pogoja, za določitev tega pogoja pa se uporablja klavzula Where. Ukaz Delete se imenuje zabeležena izvedba, ker naenkrat izbriše samo eno vrstico in v dnevniku transakcij ohrani vnos za vsako izbris vrstice. Torej, zaradi tega je delovanje počasnejše. Izbriši je stavek DML, zato se med izvrševanjem ukaza samodejno ne zaveže. Zato se lahko operacija Delete, če je potrebno, premakne nazaj za ponovni dostop do podatkov. Po izvedbi ukaza Delete ga je treba odobriti ali premakniti, da trajno shranite spremembe. Stavek Delete ne odstrani strukture tabele tabele iz baze podatkov. Prav tako ne sprosti pomnilniškega prostora, ki ga uporablja tabela.

Tipična sintaksa za ukaz Delete je navedena spodaj.

IZBRIŠI IZ

ali

IZBRIŠI OD KJER

Izreži izjavo

Stavek Truncate odstrani vse podatke iz obstoječe tabele v zbirki podatkov, vendar ohranja enako strukturo tabele, tudi omejitve integritete, pravice dostopa in odnose z drugimi tabelami. Torej tabele ni treba znova definirati in je mogoče uporabiti staro strukturo tabele, če želi uporabnik tabelo ponovno uporabiti. Truncate odstrani celotne podatke s sprostitvijo podatkovnih strani, ki se uporabljajo za hrambo podatkov, in le te sprostitve strani se hranijo v dnevniku transakcij. Ukaz truncate zato za delovanje uporablja le manj sistemskih virov in virov dnevnika transakcij, zato je hitrejši od drugih povezanih ukazov. Skrajšanje je ukaz DDL, zato uporablja samodejne zaveze pred in po izvedbi stavka. Tako okrnjeno število nikakor ne more znova vrniti podatkov nazaj. Sprosti pomnilniški prostor, ki ga tabela porabi po izvedbi. Toda stavka Truncate ni mogoče uporabiti v tabelah, na katere se sklicujejo omejitve tujega ključa.

Sledi pogosta sintaksa stavka Truncate.

RAZREŠITEV TABELE

Kakšna je razlika med Delete in Truncate?

1. Ukazi Delete in Truncate odstranijo podatke iz obstoječih tabel v zbirki podatkov, ne da bi škodovali strukturi tabel ali drugim sklicem na tabelo.

2. Vendar lahko z ukazom Delete izbrišete določene vrstice samo v tabeli z ustreznim pogojem ali pa izbrišete vse vrstice brez kakršnega koli pogoja, medtem ko je ukaz Truncate mogoče uporabiti samo za brisanje celotnih podatkov v tabeli.

3. Delete je ukaz DML in po potrebi lahko vrne operacijo nazaj, Truncate pa je DDL ukaz, zato je stavek samodejne odobritve in ga ni mogoče na noben način vrniti nazaj. Zato je pomembno, da ta ukaz uporabljate previdno pri upravljanju baz podatkov.

4. Operacija Truncate porabi manj sistemskih virov in virov dnevnika transakcij kot operacija Delete, zato Truncate velja za hitrejšo kot Delete.

5. Poleg tega Delete ne sprosti prostora, ki ga uporablja tabela, medtem ko Truncate sprosti prostor, ki se uporablja po izvedbi, zato Delete ni učinkovit v primeru brisanja celotnih podatkov iz tabele baze podatkov.

6. Vendar Truncate ni dovoljeno uporabljati, kadar se na tabelo sklicuje omejitev tujega ključa, in v tem primeru lahko namesto Truncate uporabite ukaz Delete.

7. Na koncu imata oba ukaza prednosti in tudi slabosti pri njihovi uporabi v sistemih za upravljanje z bazami podatkov, zato se mora uporabnik zavedati, da te ukaze ustrezno uporablja za doseganje dobrih rezultatov.

Priporočena: