Rozdíl mezi DELETE a DROP v SQL

Autor: Laura McKinney
Datum Vytvoření: 1 Duben 2021
Datum Aktualizace: 5 Smět 2024
Anonim
Rozdíl mezi DELETE a DROP v SQL - Technologie
Rozdíl mezi DELETE a DROP v SQL - Technologie

Obsah


DELETE a DROP jsou příkazy používané k odstranění prvků databáze. Příkaz DELETE je příkaz jazyka Data Manipulation Language, zatímco DROP je příkaz Language Data Definition Language. Bod, který rozlišuje příkaz DELETE a DROP, je tento ODSTRANIT se používá k odstranění n-tic z tabulky a UPUSTIT se používá k odstranění celého schématu, tabulky, domény nebo omezení z databáze. Podívejme se na další rozdíly mezi příkazem DELETE a DROP v SQL pomocí srovnávací tabulky níže.

Obsah: DELETE Vs DROP

  1. Srovnávací tabulka
  2. Definice
  3. Klíčové rozdíly
  4. Závěr

Srovnávací tabulka

Základ pro srovnáníODSTRANITUPUSTIT
ZákladníODSTRANIT odebere některé nebo všechny n-tice z tabulky.DROP může z databáze odebrat celé schéma, tabulku, doménu nebo omezení.
JazykDELETE je příkaz Jazyk pro manipulaci s daty.DROP je příkaz jazyka Data Definition Language.
DoložkaWHERE klauzule lze použít spolu s příkazem DELETE.Spolu s příkazem DROP se nepoužívá žádná klauzule.
RollbackAkce prováděné pomocí DELETE lze vrátit zpět.Akce prováděné DROP nelze vrátit zpět.
ProstorI když odstraníte všechny n-tice tabulky pomocí DELETE, místo obsažené tabulkou v paměti není uvolněno.Tabulka odstraněná pomocí DROP uvolní tabulkový prostor z paměti.


Definice DELETE

DELETE je Jazyk pro manipulaci s daty (DDL) příkaz. Příkaz DELETE se používá, když chcete odebrat nějaký nebo všechny n-tice ze vztahu. Li KDE klauzule se používá spolu s příkazem DELETE, odstraní pouze ty n-tice, které splňují podmínku klauzule WHERE.

Pokud klauzule WHERE chybí v příkazu DELETE, pak jsou ve výchozím nastavení odstraněny všechny n-tice z relace, i když relace obsahující tyto n-tice ve schématu stále existuje. Pomocí příkazu DELETE nemůžete odstranit celou relaci nebo domény nebo omezení.

Syntaxe příkazu DELETE je následující:

ODSTRANIT Z relace JAKÉ podmínka;

Pokud propojíte dvě tabulky pomocí a cizí klíč a odstranit n-tici z odkazované tabulky, pak bude automaticky n-tice z referenční tabulky také vymazána, aby se zachovala referenční integrita.


Aby byla zachována referenční integrita, DELETE má dvě možnosti chování, OMEZIT a KASKÁDA. RESTRICT odmítne odstranění n-tice, pokud na ni odkazuje odkazující n-tice v jiné tabulce. CASCADE umožňuje odstranit odkazující n-tici, která odkazuje na n-tici, která se má vymazat.

Definice DROP

DROP je Jazyk pro definici dat (DDL) příkaz. Příkaz DROP odebere pojmenované prvky schématu jako vztahy, domény nebo omezení, můžete dokonce odstranit celý schéma pomocí příkazu DROP.

Syntaxe příkazu DROP je následující:

DROP SCHEMA schema_name RESTRICT;

Tabulka DROP table_name CASCADE;

Příkaz DROP má dvě možnosti chování KASKÁDA a OMEZIT. Když je CASCADE použit pro DROP schéma, odstraní všechny související prvky, jako jsou všechny vztahy ve schématu, domény a omezení.

Pokud pomocí CASCADE odstraníte relaci (tabulku) ze schématu, odstraní se všechna omezení, pohledy a také prvky odkazující na zrušenou relaci.

V případě, že DROP schéma použijete pomocí RESTRICT, pak se příkaz DROP spustí, pouze pokud jsou v prvku žádné prvky schéma jsou ponechány. Pokud DROP tabulku použijete pomocí RESTRICT, příkaz DROP se spustí, pouze pokud v prvku nejsou žádné prvky. stůl jsou ponechány.

Klíčové rozdíly mezi DELETE a DROP v SQL

  1. Příkaz DELETE se používá k odstranění některých nebo všech n-tic z tabulky. Na druhé straně se příkaz DROP používá k odstranění schématu, tabulky, domény nebo omezení z databáze.
  2. DELETE je příkaz Data Manipulation Language, zatímco DROP je příkaz Language Definition Language.
  3. DELETE lze použít spolu s klauzulí WHERE, ale DROP se nepoužívá společně s žádným příkazem.
  4. Akce provedené příkazem DELETE lze vrátit, ale ne v případě příkazu DROP.
  5. Protože příkaz DELETE neodstraňuje tabulku, není uvolněn žádný prostor, zatímco DROP odstraní celou tabulku a uvolní paměťový prostor.


Závěr:

Příkaz DELETE se používá k odstranění řádků uvnitř tabulky a příkaz DROP k odstranění samotné samotné tabulky.