Skirtumas tarp DELETE ir DROP SQL

Autorius: Laura McKinney
Kūrybos Data: 1 Balandis 2021
Atnaujinimo Data: 5 Gegužė 2024
Anonim
30 глупых вопросов Data Engineer [Карьера в IT]
Video.: 30 глупых вопросов Data Engineer [Карьера в IT]

Turinys


DELETE ir DROP yra komandos, naudojamos duomenų bazės elementams pašalinti. Komanda DELETE yra duomenų tvarkymo kalbos komanda, o DROP yra duomenų apibrėžimo kalbos komanda. Taškas, kuris išskiria DELETE ir DROP komandas, yra tas IŠTRINTI yra naudojamas pašalinti stulpelius nuo stalo ir DROP naudojamas pašalinti iš duomenų bazės visas schemas, lenteles, domenus ar apribojimus. Toliau pateiktoje palyginimo diagramoje aptarsime dar keletą skirtumų tarp DELETE ir DROP komandų SQL.

Turinys: DELETE vs DROP

  1. Palyginimo diagrama
  2. Apibrėžimas
  3. Pagrindiniai skirtumai
  4. Išvada

Palyginimo diagrama

Palyginimo pagrindasIŠTRINTIDROP
PagrindinisIŠtrinti pašalinkite kai kuriuos arba visus lentelės nurodymus.DROP gali pašalinti visą schemą, lentelę, domeną ar apribojimus iš duomenų bazės.
KalbaDELETE yra duomenų tvarkymo kalbos komanda.DROP yra duomenų apibrėžimo kalbos komanda.
IšlygaKUR išlyga gali būti naudojama kartu su komanda DELETE.Kartu su DROP komanda nenaudojama jokia išlyga.
AtšaukimasVeiksmai, kuriuos atlieka DELETE, gali būti atkurti.DROP atliktų veiksmų negalima atšaukti.
ErdvėNet ištrynę visus lentelės aprašus naudodami DELETE, lentelės užimama vieta atmintyje nebus išlaisvinta.Lentelė, ištrinta naudojant DROP, atlaisvina lentelės vietą iš atminties.


„DELETE“ apibrėžimas

DELETE yra Duomenų tvarkymo kalba (DDL) komanda. Komanda DELETE naudojama, kai norite pašalinti kai kurie arba visos bangos iš santykio. Jei KUR sakinys naudojamas kartu su komanda DELETE, jis pašalina tik tuos sakinius, kurie atitinka WHERE sąlygos sąlygą.

Jei kur nors ištrinti sakinį nėra ištrinant sakinio, tada pagal nutylėjimą visi sakiniai pašalinami iš ryšio, nors santykis, kuriame yra tie sakiniai, vis dar egzistuoja schemoje. Negalite ištrinti visos sąsajos ar domenų ar apribojimų naudodami komandą IŠTRINTI.

DELETE komandos sintaksė yra tokia:

IŠtrinti iš santykio_vardas, kur sąlyga;

Jei susiesite dvi lenteles naudodami a svetimas raktas ir ištrinkite pakeistą lentelę iš nurodytos lentelės, tada automatiškai ištrinsite nuorodų lentelės rinkinį, kad išlaikytumėte referentinis vientisumas.


Norėdami išlaikyti referencinį vientisumą, DELETE yra du elgesio variantai, APRIBOJIMAS ir CASCADE. RESTRICT atmeta trinkelės ištrynimą, jei ji remiasi nuorodų paketu kitoje lentelėje. CASCADE leidžia ištrinti nuorodų rinkinį, kuris nurodo ištrinamą nurodymą.

DROP apibrėžimas

DROP yra a Duomenų apibrėžimo kalba (DDL) komanda. DROP komanda pašalina nurodytus schemos elementus kaip santykiai, domenai arba suvaržymai, netgi galite pašalinti visą schema naudojant DROP komandą.

DROP komandos sintaksė yra tokia:

DROP SCHEMA schema_name RESTRICT;

DROP lentelė lentelės_pavadinimas CASCADE;

DROP komanda turi du įvardintus elgesio variantus CASCADE ir APRIBOJIMAS. Kai CASCADE naudojamas schemai išnaikinti, jis ištrina visus susijusius elementus, pvz., Visus ryšius schemoje, domenus ir apribojimus.

Kai naudojate CASCADE, kad pašalintumėte ryšį (lentelę) iš schemos, tada ištrinami visi apribojimai, rodiniai ir elementai, nurodantys numetamą ryšį.

Jei DROP schemą naudojate RESTRICT, DROP komanda vykdoma tik tuo atveju, jei nėra elementų schema liko. Jei DROP lentelę naudodami RESTRICT, tada DROP komanda vykdys tik tada, jei stalas liko.

Pagrindiniai SQL skirtumai tarp DELETE ir DROP

  1. Komanda DELETE naudojama pašalinti kai kuriuos arba visus nurodymus iš lentelės. Kita vertus, DROP komanda naudojama schemoms, lentelėms, domenams ar apribojimams pašalinti iš duomenų bazės.
  2. DELETE yra duomenų tvarkymo kalbos komanda, o DROP yra duomenų apibrėžimo kalbos komanda.
  3. DELETE galima naudoti kartu su WHERE išlyga, tačiau DROP nenaudojamas kartu su jokiomis komandomis.
  4. Veiksmai, kuriuos atlieka komanda DELETE, gali būti atšaukti, bet ne DROP komandos atveju.
  5. Kadangi komanda „DELETE“ neištrina lentelės, neatleidžiama vieta, o DROP ištrindama visą lentelę atlaisvina vietos.


Išvada:

Komanda DELETE naudojama lentelės eilutėms ištrinti, o DROP komanda naudojama visai lentelės ištrynimui.