Atšķirība starp saīsināšanu un dzēšanu

Datu izveidošana un manipulācijas veido datu bāzu pamatu, un mēs to attiecīgi saucam par DDL un DML. DDL ir datu definīcijas valodas saīsinājums. Tas varēja vai nu izveidot, vai pārveidot datu struktūras datu bāzēs, un tos nevarēja izmantot, lai mainītu tabulās esošos datus. Piemēram, mums ir komandas, kas vienkārši izveido tabulu ar norādītajiem tabulas atribūtiem, bet tā nekad tabulā nepievieno nekādas rindas. Bet DML, datu manipulācijas valoda, var tabulās pievienot, dzēst vai modificēt datus. Parasti DDL komandas nodarbojas ar tabulas struktūrām, savukārt DML komandas nodarbojas ar faktiskajiem datiem. Lai tā būtu, kāpēc mēs vienkārši novirzāmies no tēmas “Atšķirība starp saīsināšanu un dzēšanu”? Ir iemesli, kāpēc mēs runājām par DML un DDL. Jūs to saprastu nākamajās diskusijās.

Kas ir saīsināt komandu?

Saīsināšanas komandas mērķis ir izdzēst visu tabulu. Tātad, lietojot komandu Truncate, jūs zaudēsit visus uz tabulas esošos datus, un jums to vajadzētu izmantot piesardzīgi. Paziņojiet mums, kā to izmantot.

Truncate sintakse:

TRUNCATE TABULA tabulas nosaukums;

Šeit jums jānorāda tabulas nosaukums, kas kopumā būtu jāsvītro. Tas nodrošina, ka atmiņā būtu jebkurš galds. Šeit ir Truncate lietošanas piemērs.

Zemāk ir tabula “darbinieks”, un apskatiet tikai tajā esošās datu rindas.

emp-id emp-vārds apzīmējums
1011. lpp Džeks Lietvedis
1012 Rožaini Administrators
1014. gads Nensija Finanses

Tagad ļaujiet mums izdot zemāk esošo komandu uz darbinieku galda.

TRUNCATE TABULA darbinieks;

Šeit ir parādīts iepriekš minētais sintakse, un tajā nav datu.

emp-id emp-vārds apzīmējums

Kas ir dzēšanas komanda?

Komandas Dzēst mērķis ir noņemt norādītās rindas no tabulas. Šeit klauzulu “Kur” izmanto šeit, lai norādītu izdzēšamās rindas. Ja mēs nenorādīsim rindas, komanda izdzēsīs visas tabulas rindas. Paskatieties tikai uz tā sintaksi.

Svītrot no darbinieks;

Iepriekš minētā sintakse izdzēš visas tabulas “darbinieks” rindas. Tātad iegūtajā tabulā nebūtu datu.

Svītrot no darbinieks KUR emp-id = 1011;

Šis paziņojums tikai izdzēš vienu rindu, kuras emp-id ir 1011. Tātad iegūtā tabula būtu šāda.

emp-id emp-vārds apzīmējums
1012 Rožaini Administrators
1014. gads Nensija Finanses

Atšķirības:

  • Truncate ir DDL; Dzēšana ir DML: Iepriekš apspriedām, kā darbojas DDL un DML. Komanda Truncate ir DDL, un tā darbojas datu struktūras līmenī. Bet Dzēst ir DML komanda, un tā darbojas ar tabulas datiem. Citi DDL piemēri ir CREATE un ALTER. Līdzīgā veidā mēs varētu teikt, ka tādas komandas kā SELECT, UPDATE un INSERT ir lieliski piemēroti DML.
  • Kā darbojas saīsināšana un dzēšana: Tiklīdz mēs izdodam komandu Truncate, tā vienkārši meklē norādīto tabulu. Tad tas pilnībā noņem visus datus no atmiņas. Bet dzēšanas gadījumā darba procedūra nedaudz atšķiras. Šajā gadījumā sākotnējie tabulas dati tiek kopēti telpā, ko sauc par “Atpakaļ” vietu pirms faktiskās datu apstrādes. Tad izmaiņas tiek veiktas faktiskajā tabulas datu telpā. Tātad, abi viņi atšķiras savā darba veidā.

Saīsināt -> noņemiet no tabulas visus datus -> Tabulas telpa ir atbrīvota.

Dzēst -> Kopēt oriģinālos tabulas datus uz atcelšanas vietu -> izdzēst norādītos datus / visu tabulu -> Tabulas telpa tiek atbrīvota, bet atgriezeniskā telpa ir aizpildīta.

  • Atgriešanās: Atcelšana ir kā atsaukšanas komanda mūsu Microsoft piederumos. To izmanto, lai atceltu nesen veiktās izmaiņas, t.i., no pēdējā saglabātā punkta. Lai veiktu operāciju, dati pirms to rediģēšanas ir jākopē Roll Roll telpā. Lai arī šīm rullīšu atzveltnēm ir nepieciešama papildu atmiņa, tās ir ļoti noderīgas, lai atgrieztos pie oriģināla. It īpaši, ja jūs rediģējat kļūdas dēļ! Ļaujiet mums nonākt pie saīsināt un izdzēst attiecībā uz atgriešanās tagad. Kā mēs apspriedām iepriekš, saīsne nekad neizmanto atgriezenisko vietu, un mēs nevarējām atgriezties pie sākotnējiem datiem. Bet komanda Dzēst izmanto atcelšanas vietu, un mēs attiecīgi varētu izmantot vai nu “Apņemties”, vai “Atgriezt”, lai attiecīgi pieņemtu vai atceltu izmaiņas.
  • Aktivizētāji: Tiem, kam nepieciešams paskaidrojums par sprūdajiem, šeit ir neliela piezīme. Aktivizētāji ir iepriekš noteikts darbību / operāciju kopums, kas jāaktivizē, kad tabula nonāk noteiktā stāvoklī. Piemēram, mēs varētu sākt mainīt algas apmēru, ja darbinieka pieredze uzņēmumā ir vairāk nekā gads. Šie aktivizētāji varētu darboties arī citās tabulās. Piemēram, mēs varētu atjaunināt finanšu tabulu, tiklīdz darbiniekam ir palielināts atalgojums.

Saīsināt ir DDL komanda, sprūda šeit nav atļauta. Bet Dzēst ir DML komanda, šeit ir atļauti trigeri.

  • Kurš ir ātrāks? Kā jūs uzminējāt, komanda Apgriezt būtu ātrāka par komandu Dzēst. Pirmais varētu noņemt visus datus, un nav jāpārbauda, ​​vai nav atbilstošu nosacījumu. Arī oriģinālie dati netiek kopēti atcelšanas telpā, un tas ietaupa daudz laika. Šie divi faktori liek Truncate darboties ātrāk nekā Dzēst.
  • Vai mēs varētu izmantot klauzulu WHERE?? Klauzula “Kur” tiek izmantota, lai norādītu noteiktus atbilstības nosacījumus, un tā nav nekāda saīsne. Tā kā Truncate nekad nemeklē atbilstošus nosacījumus un tas tikai noņem visas rindas, šeit nevarējām izmantot klauzulu “Kur”. Bet mēs vienmēr varētu precizēt nosacījumu, izmantojot komandas “Dzēst” klauzulu “Dzēst”.
  • Kas aizņem vairāk vietas? Saīsinājums nelietos atcelšanas vietu, un tas saglabā šo atmiņu. Bet dzēšanai nepieciešama dublēšana atgriezeniskās vietas veidā, un līdz ar to tai ir nepieciešams vairāk atmiņas nekā saīsinātai vietai.

Tātad tās ir atšķirības un ļaujiet mums aplūkot tabulas veidā.

S.Nē Atšķirības Saīsināt Dzēst
1. DDL vai DML? Tas ir DDL un darbojas datu struktūras līmenī. Citi DDL piemēri ir CREATE un ALTER. Tā ir DML komanda, un tā darbojas ar tabulas datiem. DML nozīmē datu manipulācijas valodu. Tādas komandas kā SELECT, UPDATE un INSERT ir lieliski DML piemēri. DML nozīmē datu manipulācijas valodu.

2. Kā tas darbojas? Tiklīdz mēs izdodam komandu Truncate, tā vienkārši meklē norādīto tabulu. Tad tas pilnībā noņem visus datus no atmiņas. Šajā gadījumā sākotnējie tabulas dati tiek kopēti telpā, ko sauc par “Atpakaļ” vietu pirms faktiskās datu apstrādes. Tad izmaiņas tiek veiktas faktiskajā tabulas datu telpā.
3. Atgriezeniskā saite Komanda Truncate nekad neizmanto atcelšanas vietu, un mēs nevarējām atgriezties pie sākotnējiem datiem. Atcelšanas vieta ir ekskluzīva, un tā tiek aizņemta, izdodot DML komandas. Komanda Dzēst izmanto atcelšanas vietu, un, lai attiecīgi pieņemtu vai atceltu izmaiņas, mēs varētu izmantot “Commit” vai “RollBack”..

4. Trigeri Saīsināt ir DDL komanda, trigeri nav atļauti. Dzēst ir DML komanda, šeit ir atļauti trigeri.

5. Kurš ir ātrāks? Tas varētu noņemt visus datus, un nav jāpārbauda, ​​vai nav atbilstošu nosacījumu. Arī oriģinālie dati netiek kopēti atcelšanas telpā, un tas ietaupa daudz laika. Šie divi faktori liek Truncate darboties ātrāk nekā Dzēst.

Tas izmanto atcelšanas vietu, un vienmēr par to ir jāsaglabā oriģinālie dati. Tas ir papildu slogs, un tas, savukārt, prasa daudz laika nekā nogrieznis.
6. Vai mēs varētu izmantot klauzulu WHERE?? Tā kā Truncate nekad nemeklē atbilstošus nosacījumus un tas tikai noņem visas rindas, šeit nevarējām izmantot klauzulu “Kur”.. Bet mēs vienmēr varētu precizēt nosacījumu, izmantojot komandas “Dzēst” klauzulu “Dzēst”.
7. Kas aizņem vairāk vietas? Saīsinājums nelietos atcelšanas vietu, un tas saglabā šo atmiņu. Tam nepieciešama rezerves kopija atgriezeniskās vietas veidā, un līdz ar to tai ir nepieciešams vairāk atmiņas nekā saīsinātai vietai.

Zinot atšķirības starp diviem subjektiem, tiek paplašinātas zināšanas par abiem! Jūs esat nolaidies uz pareizā ceļa, t.i., tīmekļa lapas, lai saprastu atšķirības, it īpaši starp saīsināšanas un dzēšanas komandām. Es ceru, ka jums tagad ir skaidra tās atšķirības un paziņojiet mums, vai mēs būtu palīdzējuši jums to saprast. Jūs varētu arī mums palīdzēt norādīt, kas vēl ir palicis!