Skirtumas Tarp „Delete“ir „Drop“

Skirtumas Tarp „Delete“ir „Drop“
Skirtumas Tarp „Delete“ir „Drop“

Video: Skirtumas Tarp „Delete“ir „Drop“

Video: Skirtumas Tarp „Delete“ir „Drop“
Video: Создание динамических веб-приложений с помощью Laravel, автор Эрик Оуянг 2024, Balandis
Anonim

Ištrinti prieš lašą

Tiek „Delete“, tiek „Drop“komandos priklauso „SQL“(„Structured Query Language“) sakiniams ir yra naudojamos šalinant duomenis iš duomenų bazės. „Delete“yra komanda „DML“(duomenų tvarkymo kalba). Jis ištrina kai kuriuos arba visus duomenis iš lentelės pagal vartotojo nurodytą sąlygą. Ištrinti sakinį pašalinami tik duomenų įrašai lentelėje, bet lentelės struktūra duomenų bazėje pateikiama ta pati. „Drop“komanda yra DDL („Data Definition Language“) sakinys ir veikia kitaip nei „Delete“komanda. Tai nėra sąlyginis teiginys, todėl iš lentelės ištrinami visi duomenys, taip pat iš duomenų bazės visam laikui pašalinama lentelės struktūra ir visos nuorodos į tą lentelę.

Ištrinti teiginį

Kaip minėta pirmiau, „Delete“sakinys pašalina duomenis iš lentelės pagal pateiktą sąlygą, o ši sąlyga nurodoma kartu su „Delete“sąlyga. Jei sąlyga „Kur“nenurodyta kartu su „Ištrinti“, visi lentelės duomenys pašalinami iš lentelės. Tačiau „Delete“operacijoje esama lentelės struktūra išlieka ta pati. Todėl vartotojui nereikia apibrėžti lentelės struktūros, jei jis nori vėl naudoti lentelę. Kadangi „Delete“yra DML komanda, ji neįvykdoma automatiškai po vykdymo. Taigi, tai galima sugrąžinti, kad būtų anuliuota ankstesnė operacija. Priešingu atveju, norint padaryti pakeitimus visam laikui, reikia iškviesti „Commit“pareiškimą. Vykdydamas ištrynimo sakinį, jis įrašo įrašą į operacijų žurnalą kiekvienam eilutės ištrynimui. Taigi tai turi įtakos operacijos sulėtinimui. Taip pat,jis nepaskirsto vietos, naudojamos po vykdymo.

Toliau pateikiama ištrynimo sakinio sintaksė.

IŠTRINTI IŠ

arba

IŠTRINTI IŠ KUR

„Drop“pareiškimas

„Drop“pareiškimas pašalina ne tik visus lentelės įrašus iš duomenų bazės be jokių sąlygų, bet ir visam laikui pašalina lentelės struktūrą, vientisumo apribojimus, indeksus ir atitinkamos lentelės prieigos teises iš duomenų bazės. Taigi, visų kitų lentelių sąsajų taip pat nebėra, o informacija apie lentelę pašalinama iš duomenų žodyno. Taigi, jei vartotojas nori pakartotinai naudoti lentelę, jis turi dar kartą apibrėžti lentelės struktūrą ir visas kitas nuorodas į lentelę. „Drop“yra DDL komanda ir, įvykdžius komandą, jos negalima vėl sugrąžinti, nes „Drop“komanda naudoja automatinį įsipareigojimą. Todėl vartotojas turėtų būti labai atsargus naudodamas šią komandą. „Drop“sakinio negalima pritaikyti sistemos lentelėms, taip pat jo negalima naudoti lentelėms, kurios turi užsienio raktų apribojimus.

„Drop“komandą galima naudoti ne tik SQL lentelėms, bet ir duomenų bazėms, rodiniams ir lentelių stulpeliams, o visi šiuose objektuose saugomi duomenys visam laikui prarandami kartu su objektais.

Toliau pateikiama tipinė „Drop“komandos sintaksė.

LAŠINĖ LENTELĖ

Kuo skiriasi „Delete“ir „Drop“?

1. „Delete and Drop“komandos pašalina lentelės duomenis iš duomenų bazės.

2. Tačiau „Delete“sakinys atlieka sąlyginį ištrynimą, o „Drop“komanda ištrina visus lentelės įrašus.

3. Be to, „Delete utasítás“pašalina tik lentelės eilutes ir išsaugo lentelės struktūrą, o „Drop“komanda pašalina visus lentelės duomenis ir lentelės struktūrą, taip pat pašalina visas kitas nuorodas iš duomenų bazės.

4. Delete yra DML sakinys, o Drop yra DDL komanda. Taigi, „Delete“operaciją galima sugrąžinti atgal ir ji nėra automatiškai patvirtinta, o „Drop“operacijos jokiu būdu negalima grąžinti atgal, nes tai yra automatiškai atliktas sakinys.

5. „Drop“komandos negalima naudoti lentelėse, į kurias nurodomi svetimų raktų apribojimai, o vietoj to galima naudoti „Delete“komandą.

6. „Drop“komanda turėtų būti naudojama atsargiai, gerai suprantant, palyginti su „SQL“programų „Delete“sakiniu.

Rekomenduojama: