IŠTRINTI yra DML (Data Manipulation Language) komanda ir yra naudojama, kai nurodome eilutę (kortelę), kurią norime pašalinti arba ištrinti iš lentelės arba santykio. DELETE komandoje gali būti WHERE sąlyga. Jei WHERE sąlyga naudojama su komanda DELETE, tada ji pašalina arba ištrina tik tas eilutes (eilutes), kurios tenkina sąlygą; kitu atveju pagal numatytuosius nustatymus jis pašalina visas eilutes (eilutes) iš lentelės. Atminkite, kad DELETE registruoja eilučių panaikinimus.
Sintaksė:
IŠTRINTI IŠ lentelės pavadinimo
KUR sąlyga;
git pull sintaksė
Sutrumpinti yra DDL (duomenų apibrėžimo kalba) komanda ir naudojama ištrinti visas lentelės eilutes arba eilutes. Skirtingai nei komandoje DELETE, komandoje TRUNCATE nėra a WERE sąlyga . Komandoje TRUNCATE kiekvieno ištrintų duomenų puslapio operacijų žurnalas neįrašomas. Skirtingai nuo komandos DELETE, komanda TRUNCATE yra greita. Negalime atšaukti duomenų panaudoję komandą TRUNCATE.
Sintaksė:
TRUNCATE TABLE Lentelės pavadinimas;
Supraskime tai paimdami vieną paprastą pavyzdį, kuriame sukursime vieną fiktyvią lentelę ir atliksime ištrynimo operaciją.
Užklausa:
CREATE table Employee ( Emp_id int, name VARCHAR(20), country VARCHAR(20), Salary INT); --insert the data in the Employee Table INSERT INTO Employee (Emp_id, name, country, Salary) values (101, 'Mohit', 'India', 60000), (103, 'Anish', 'England', 70000), (104, 'Shubham', 'France', 100000), (102, 'Danish', 'Sweden', 40000), (105, 'Vivek', 'Wales', 50000), (106, 'Rohan', 'Scotland', 30000); Select * from Employee ;>
Išvestis

Darbuotojų lentelė
Naikinimo komandos pavyzdys:
Dabar turite sukurti užklausą, kad pašalintumėte paskutinį Emp_id įrašą su 106 reikšme.
Užklausa:
Delete from Employee where Emp_id = 106;>
Išvestis

išvestis
TRUNCATE komandos pavyzdys
Norėdami visiškai pašalinti visus įrašus iš stalo žaidėjų šiuo atveju, naudokite komandą sutrumpinti.
Užklausa:
TRUNCATE TABLE Employee;>
Skirtumai tarp DELETE ir TRUNCATE
| Ištrinti | Sutrumpinti |
|---|---|
| Komanda DELETE naudojama nurodytoms eilutėms (vienai ar daugiau) ištrinti. | Nors ši komanda naudojama visoms lentelės eilutėms ištrinti. |
| Tai yra DML (duomenų manipuliavimo kalba) komandą. | Nors tai yra a DDL (duomenų apibrėžimo kalba) komandą. |
| Kad būtų galima filtruoti įrašus, komandoje DELETE gali būti sąlyga WHERE. | Nors komandoje TRUNCATE gali nebūti WHERE sąlygos. |
| Komandoje DELETE eilutė užrakinama prieš ją pašalinant. | Vykdant šią komandą duomenų puslapis užrakinamas prieš pašalinant lentelės duomenis. |
| Teiginys DELETE pašalina eilutes po vieną ir įrašo kiekvienos ištrintos eilutės įrašą operacijų žurnale. | TRUNCATE TABLE pašalina duomenis išskirdama duomenų puslapius, naudojamus lentelės duomenims saugoti, ir operacijų žurnale įrašo tik puslapių paskirstymus. |
| Komanda DELETE yra lėtesnė nei komanda TRUNCATE. | Nors komanda TRUNCATE yra greitesnė nei komanda DELETE. |
| Norėdami naudoti „Delete“, jums reikia leidimo DELETE lentelėje. | Norint ant stalo naudoti Truncate, mums reikia bent ALTER leidimas ant stalo. |
| Mažiau stulpelio tapatybė išsaugo tapatybę po to, kai lentelėje naudojamas DELETE pareiškimas. | Stulpelio tapatybė iš naujo nustatoma į pradinę vertę, jei lentelėje yra tapatybės stulpelis. |
| Ištrynimas gali būti naudojamas su indeksuotais rodiniais. | Sutrumpinimas negali būti naudojamas su indeksuotais rodiniais. |
| Ši komanda taip pat gali aktyvuoti paleidiklį. | Ši komanda neaktyvina. |
| DELETE sakinys užima daugiau operacijos vietos nei Sutrumpinti. | Sutrumpintas sakinys užima mažiau operacijos vietos nei DELETE. |
| Ištrynimo operacijas galima ATSUKTI atgal. | TRUNCATE negalima atšaukti, nes tai sukelia netiesioginį įsipareigojimą. |
| Ištrynus nenuleidžiama visos lentelės. Jis įgauna užraktą lentelėje ir pradeda trinti eilutes. | TRUNCATE pirmiausia atmeta lentelę, o tada sukuria ją iš naujo, o tai yra greičiau nei atskirų eilučių ištrynimas. |
Išvada
Šiame straipsnyje SQL kūrėjai gali tinkamai pašalinti eilutes tinkamai naudodami komandas DELETE ir TRUNCATE. Komanda TRUNCATE turi būti naudojama atsargiai, nes ji ištrina visus lentelės įrašus. Pradedantiesiems taip pat bus naudinga šioje pamokoje paaiškinti skirtumus tarp komandų Naikinti ir Sutrumpinti.
IŠTRINTI:
- Norite pašalinti visus Darbuotojus, kurie nieko nepirko per pastaruosius šešis mėnesius, nuo stalo.
- Norite pašalinti darbuotoją iš stalo.
TRUNCATE:
- Norite atkurti pradinę lentelės būseną.
- Jums nereikia turėti galimybę atkurti duomenų; tiesiog norite jį visiškai pašalinti iš lentelės.