Rozdiel medzi odstránením a skrátením

Odstrániť vs Skrátiť

Oba príkazy SQL (Structure Query Language), Delete a Truncate sa používajú na odstránenie údajov uložených v tabuľkách v databáze. Odstrániť je príkaz DML (Data Manipulation Language) a odstráni niektoré alebo všetky riadky tabuľky. „Klauzula Where“ sa používa na určenie riadkov, ktoré sa majú vymazať, a ak sa klauzula Where nepoužije s príkazom Delete, odstránia sa všetky údaje v tabuľke. Skrátiť je príkaz DDL (Data Definition Language) a odstráni celé údaje z tabuľky. Oba tieto príkazy nezničia štruktúru tabuľky a odkazy na tabuľku a podľa potreby sa odstránia iba údaje.

Vymazať vyhlásenie

Vymazať príkaz umožňuje užívateľovi odstrániť údaje z existujúcej tabuľky v databáze na základe zadanej podmienky a na určenie tejto podmienky sa používa klauzula 'Where'. Príkaz Delete sa označuje ako protokolované vykonanie, pretože odstráni naraz iba jeden riadok a v protokole transakcií ponechá záznam pre každé vymazanie každého riadku. To teda spôsobuje spomalenie operácie. Delete je príkaz DML, a preto sa pri vykonávaní príkazu automaticky nezaväzuje. Ak je to potrebné, operáciu Delete môžete preto vrátiť, aby ste k údajom mali opäť prístup. Po vykonaní príkazu Odstrániť by sa mal potvrdiť alebo vrátiť späť, aby sa zmeny trvale uložili. Vymazať príkaz neodstráni štruktúru tabuľky z databázy. Taktiež nerozdeľuje miesto v pamäti, ktoré používa tabuľka.

Typická syntax príkazu Odstrániť je uvedená nižšie.

ODSTRÁNIŤ OD

alebo

ODSTRÁNIŤ KDE

Skrátené vyhlásenie

Príkaz Truncate odstráni všetky údaje z existujúcej tabuľky v databáze, ale zachováva rovnakú štruktúru tabuľky, tiež obmedzenia integrity, prístupové práva a vzťahy s ostatnými tabuľkami. Nie je teda potrebné znovu definovať tabuľku a ak chce užívateľ znovu použiť tabuľku, môže sa použiť stará štruktúra tabuľky. Funkcia Truncate odstráni celé údaje odúčtovaním stránok s údajmi, ktoré sa používajú na uchovávanie údajov, av protokole transakcií sa uchovávajú iba tieto umiestnenia strán. Preto skrátený príkaz používa na prevádzku iba menej prostriedkov systémových a transakčných protokolov, takže je rýchlejší ako iné súvisiace príkazy. Skrátiť je príkaz DDL, takže používa automatické záväzky pred a po vykonaní príkazu. Skrátenie preto nemôže žiadnym spôsobom vrátiť údaje späť. Uvoľňuje pamäťový priestor, ktorý tabuľka používa po vykonaní. Príkaz Skrátiť však nemožno použiť na tabuľky, na ktoré sa vzťahujú obmedzenia cudzích kľúčov.

Nasleduje spoločná syntax výrazu Skrátiť.

SKRUTKA TABUĽKA

Aký je rozdiel medzi príkazmi Odstrániť a Skrátiť?

1. Príkazy Delete a Truncate odstraňujú údaje z existujúcich tabuliek v databáze bez poškodenia štruktúry tabuľky alebo iných odkazov na tabuľku.

2. Príkaz Odstrániť sa však dá použiť na vymazanie konkrétnych riadkov iba v tabuľke pomocou príslušnej podmienky alebo na vymazanie všetkých riadkov bez akýchkoľvek podmienok, zatiaľ čo príkaz Skrátiť sa dá použiť iba na vymazanie celých údajov v tabuľke..

3. Vymazať je príkaz DML av prípade potreby môže operáciu vrátiť späť, ale skrátiť je príkazom DDL, jedná sa o príkaz automatického potvrdenia a nemožno ho žiadnym spôsobom vrátiť. Preto je dôležité tento príkaz používať pri správe databázy opatrne.

4. Operácia skrátenia spotrebuje menej systémových prostriedkov a prostriedkov denníka transakcií ako operácia vymazania, preto sa skrátenie považuje za rýchlejšie ako vymazanie.

5. Vymazanie tiež nezabezpečí miesto, ktoré používa tabuľka, zatiaľ čo skrátenie uvoľní miesto použité po vykonaní, takže odstránenie nie je efektívne v prípade vymazania všetkých údajov z databázovej tabuľky..

6. Avšak skrátenie nie je dovolené používať, keď je na tabuľku odkazované obmedzenie cudzieho kľúča, av takom prípade môže byť namiesto skrátenia použitý príkaz Odstrániť..

7. Nakoniec, oba tieto príkazy majú výhody a tiež nevýhody pri ich použití v systémoch správy databáz a užívateľ by si mal byť vedomý vhodného použitia týchto príkazov na dosiahnutie dobrých výsledkov..