Razlika Med Padcem In Obrezovanjem

Razlika Med Padcem In Obrezovanjem
Razlika Med Padcem In Obrezovanjem
Anonim

Drop vs Truncate

Drop and Truncate sta dva stavka SQL (jezik strukturiranih poizvedb), ki se uporabljata v sistemih za upravljanje baz podatkov, kjer želimo iz baze podatkov odstraniti zapise podatkov. Izjava Drop in Truncate odstrani celotne podatke v tabeli in s tem povezan stavek SQL. Operacija brisanja v tem primeru ni učinkovita, ker uporablja več prostora za shranjevanje kot Drop and Truncate.

Če želimo tabelo v zbirki podatkov skupaj z vsemi podatki zavreči, nam SQL omogoči, da to enostavno izvedemo s pomočjo stavka Drop. Ukaz Drop je ukaz DDL (jezik za definicijo podatkov) in se lahko uporablja za uničenje obstoječe baze podatkov, tabele, indeksa ali pogleda. Iz baze podatkov izbriše celotne informacije v tabeli, pa tudi strukturo tabele. Prav tako se bomo morda želeli preprosto znebiti vseh podatkov v tabeli, vendar brez tabele, in lahko v takem primeru uporabimo stavek Truncate v SQL. Skrajšanje je tudi ukaz DDL in odpravlja vse vrstice v tabeli, vendar ohranja definicijo tabele enako za prihodnjo uporabo.

Spustite ukaz

Kot smo že omenili, ukaz Drop odstrani definicijo tabele in vse njene podatke, omejitve integritete, indekse, sprožilce in pravice dostopa, ki je bila ustvarjena v tej tabeli. Torej obstoječi objekt v celoti spusti iz baze podatkov, odnosi z drugimi tabelami pa po izvedbi ukaza tudi ne bodo več veljavni. Prav tako odstrani vse podatke o tabeli iz podatkovnega slovarja. Sledi tipična sintaksa za uporabo stavka Drop v tabeli.

TAPELA ZA PADANJE

V zgornjem vzorcu ukaza Drop moramo preprosto zamenjati ime tabele, ki jo želimo odstraniti iz baze podatkov.

Pomembno je poudariti, da stavka Drop ni mogoče uporabiti za brisanje tabele, na katero se sklicuje že omejitev tujega ključa. V tem primeru je treba najprej spustiti omejitev tujega ključa ali to določeno tabelo. Stavka Drop tudi ni mogoče uporabiti na sistemskih tabelah v bazi podatkov.

Ker je ukaz Drop samodejni prevzem, operacije po sprožitvi ni mogoče premakniti nazaj in sprožilci ne bodo sproženi. Ko tabela pade, vsi sklici na tabelo ne bodo veljavni, zato jo je treba, če želimo tabelo ponovno uporabiti, ponovno ustvariti z vsemi omejitvami integritete in pravicami dostopa. Ponovno je treba najti tudi vsa razmerja do drugih tabel.

Ukaz za obrezovanje

Ukaz Truncate je ukaz DDL in odstrani vse vrstice v tabeli brez pogojev, ki jih določi uporabnik, in sprosti prostor, ki ga uporablja tabela, vendar struktura tabele s stolpci, indeksi in omejitvami ostane enaka. Skrajšanje odstrani podatke iz tabele tako, da sprosti podatkovne strani, ki se uporabljajo za shranjevanje podatkov tabele, in le te sprostitve strani se hranijo v dnevniku transakcij. Tako uporablja manj virov dnevnika transakcij in sistemskih virov v primerjavi z drugimi povezanimi ukazi SQL, kot je Delete. Tako je Truncate nekoliko hitrejša izjava kot druge. Sledi tipična sintaksa ukaza Truncate.

RAZREŠITEV TABELE

Ime zgornje tabele, iz katere želimo odstraniti celotne podatke, bi morali zamenjati v zgornji sintaksi.

Odseka ni mogoče uporabiti v tabeli, na katero se sklicuje omejitev tujega ključa. Preden začne ukrepati, samodejno uporabi prevzem, nato pa še en prevzem, zato je vračanje transakcije nemogoče in sprožilci ne sprožijo. Če želimo tabelo ponovno uporabiti, moramo le dostopati do obstoječe definicije tabele v bazi podatkov.

Kakšna je razlika med Drop in Truncate?

Ukaza Drop in Truncate sta ukaza DDL in tudi stavka samodejne odobritve, tako da transakcij, izvedenih z uporabo teh ukazov, ni mogoče premakniti nazaj.

Primarna razlika med Drop in Truncate je, da ukaz Drop odstrani ne le vse podatke v tabeli, temveč tudi trajno odstrani strukturo tabele iz baze podatkov z vsemi referencami, medtem ko ukaz Truncate odstrani samo vse vrstice v tabeli in ohranja strukturo tabele in njene reference.

Če tabela pade, odnosi z drugimi tabelami ne bodo več veljavni, odstranjene pa bodo tudi omejitve integritete in pravice dostopa. Torej, če je treba tabelo ponovno uporabiti, jo je treba obnoviti z odnosi, omejitvami integritete in tudi pravicami dostopa. Če pa je tabela okrnjena, struktura tabele in njene omejitve ostanejo za prihodnjo uporabo, zato nobena od zgornjih rekreacij ni potrebna za ponovno uporabo.

Ko so ti ukazi uporabljeni, moramo biti previdni pri njihovi uporabi. Prav tako bi morali bolje razumeti naravo teh ukazov, kako delujejo, in tudi skrbno načrtovati, preden jih uporabimo, da preprečimo manjkajoče bistvene elemente. Končno lahko oba ukaza uporabimo za hitro in enostavno čiščenje baz podatkov, pri čemer porabimo manj virov.

Priporočena: