Különbség A Törlés és A Csonkítás Között

Különbség A Törlés és A Csonkítás Között
Különbség A Törlés és A Csonkítás Között

Videó: Különbség A Törlés és A Csonkítás Között

Videó: Különbség A Törlés és A Csonkítás Között
Videó: Mennyi tegyél félre, hogy ne kelljen dolgoznod? 2024, Április
Anonim

Törlés vs csonkítás

Mindkét SQL (Structure Query Language), a Törlés és a Csonkolás paranccsal megszabadulhatunk az adatbázis tábláiban tárolt adatoktól. A Delete egy DML (Data Manipulation Language) utasítás, amely eltávolítja a táblázat egy részét vagy egészét. A „Hol záradék” a törlendő sorok megadására szolgál, és ha a Hol záradékot nem a Törlés utasítással használják, akkor a táblázat összes adatait eltávolítja. A Truncate egy DDL (Data Definition Language) utasítás, amely a teljes adatot eltávolítja a táblából. Mindkét parancs nem rombolja le a tábla felépítését és a táblára való hivatkozásokat, és csak az adatokat távolítja el szükség szerint.

Nyilatkozat törlése

A Delete utasítás lehetővé teszi a felhasználó számára, hogy egy megadott feltétel alapján eltávolítsa az adatokat egy adatbázis meglévő táblájából, és a feltétel meghatározásához a "Where záradékot" használják. A Delete parancsot naplózott végrehajtásnak nevezzük, mert egyszerre csak egy sort töröl, és a tranzakciós naplóban minden sor törléséhez megad egy bejegyzést. Tehát ez lassabbá teszi a műveletet. A Delete egy DML utasítás, ezért a parancs végrehajtása közben nem történik automatikusan végrehajtás. Ezért szükség esetén a Delete művelet visszagörgethető az adatok újbóli eléréséhez. A Delete parancs végrehajtása után azt el kell végezni vagy vissza kell állítani a változások végleges mentése érdekében. A utasítás törlése nem távolítja el a táblázat táblázatszerkezetét az adatbázisból. Nem osztja el a táblázat által használt memóriaterületet sem.

A Delete parancs tipikus szintaxisa az alábbiakban található.

TÖRLÉS

vagy

TÖRLÉS HOL

Csonka nyilatkozat

A Truncate utasítás eltávolítja az összes adatot egy adatbázis meglévő táblájáról, de megőrzi ugyanazt a tábla struktúrát, az integritási korlátokat, a hozzáférési jogosultságokat és a többi táblához való viszonyt is. Tehát nem szükséges újra meghatározni a táblázatot, és a régi tábla felépítése használható, ha a felhasználó újra szeretné használni a táblázatot. A Csonkolás az adatok megőrzéséhez használt adatoldalak elosztásával eltávolítja a teljes adatot, és csak ezeket az oldalkezeléseket tárolja a tranzakciós napló. Ezért a csonka parancs csak kevesebb rendszer- és tranzakciónapló-erőforrást használ fel a működéshez, tehát gyorsabb, mint a többi kapcsolódó parancs. A Truncate egy DDL parancs, ezért automatikus utasításokat használ a utasítás végrehajtása előtt és után. Ezért a csonkítás semmilyen módon nem tudja visszagurítani az adatokat. Felszabadítja a tábla által használt memóriaterületet a végrehajtás után. De a Truncate utasítás nem alkalmazható azokon a táblákon, amelyekre idegen kulcs korlátai hivatkoznak.

Az alábbiakban bemutatjuk a Csonka utasítás általános szintaxisát.

TRUNCATE TÁBLÁZAT

Mi a különbség a Törlés és a Csonkolás között?

1. A Törlés és a Csonkolás parancsok eltávolítják az adatokat az adatbázis létező tábláiból anélkül, hogy a tábla felépítését vagy a táblára való egyéb hivatkozásokat károsítanák.

2. A Törlés paranccsal azonban csak bizonyos sorokat lehet törölni egy táblázatból egy releváns feltétel használatával, vagy az összes sort feltétel nélkül törölni, míg a Csonk parancs csak a táblázat teljes adatainak törlésére használható.

3. A Delete egy DML parancs, amely szükség esetén visszagörgetheti a műveletet, de a Truncate egy DDL parancs, tehát automatikus véglegesítési utasítás, és semmilyen módon nem állítható vissza. Ezért fontos ezt a parancsot gondosan használni az adatbázis-kezelésben.

4. A csonkolás művelet kevesebb rendszererőforrást és tranzakciónapló-erőforrást fogyaszt, mint a Törlés művelet, ezért a Csonkítás gyorsabbnak tekinthető, mint a Törlés művelet.

5. Ezenkívül a Delete nem osztja le a táblázat által használt helyet, míg a Truncate felszabadítja a végrehajtás után használt helyet, így a Delete nem hatékony abban az esetben, ha a teljes adatot törli egy adatbázis táblából.

6. Azonban a Csonkolás nem használható, ha a táblára idegen kulcs kényszer hivatkozik, és ebben az esetben a Törlés parancs használható a Csonkolás helyett.

7. Végül, mindkét parancsnak vannak előnyei és hátrányai is az adatbázis-kezelő rendszerekben történő alkalmazásuk során, és a felhasználónak tisztában kell lennie azzal, hogy ezeket a parancsokat megfelelően használja a jó eredmények elérése érdekében.

Ajánlott: