Diferența dintre ștergere și eliminare

Diferența dintre ștergere și eliminare
Diferența dintre ștergere și eliminare

Video: Diferența dintre ștergere și eliminare

Video: Diferența dintre ștergere și eliminare
Video: Care este diferența dintre brad, molid și pin? 2024, Noiembrie
Anonim

Delete vs Drop

Atât comenzile Delete, cât și Drop aparțin instrucțiunilor SQL (Structured Query Language) și sunt utilizate în cazul eliminării datelor dintr-o bază de date. Delete este o comandă DML (Data Manipulation Language). Șterge unele sau toate datele dintr-un tabel în funcție de condiția specificată de utilizator. Ștergerea instrucțiunii elimină numai înregistrările de date din tabel, dar structura tabelului o prezintă în baza de date. Comanda Drop este o instrucțiune DDL (Data Definition Language) și acționează într-un mod diferit față de comanda Delete. Nu este o declarație bazată pe condiții, așa că șterge date întregi din tabel, de asemenea, elimină structura tabelului și toate referințele la acel tabel permanent din baza de date.

Delete Statement

După cum s-a menționat mai sus, declarația Delete elimină datele dintr-un tabel pe baza condiției furnizate, iar clauza Where este folosită împreună cu Delete pentru a specifica această condiție necesară. Dacă clauza Where nu este specificată cu Delete, toate datele din tabel sunt eliminate din tabel. Cu toate acestea, în operațiunea de ștergere, structura existentă a tabelului rămâne aceeași. Prin urmare, utilizatorul nu trebuie să definească structura tabelului dacă dorește să refolosească tabelul din nou. Deoarece Delete este o comandă DML, nu se comite automat după execuție. Deci, aceasta poate fi anulată pentru a anula operația anterioară. În caz contrar, declarația Commit ar trebui să fie apelată pentru a face modificările permanente. În timpul executării instrucțiunii Delete, aceasta înregistrează o intrare în jurnalul de tranzacții pentru fiecare ștergere de rând. Deci, acest lucru afectează încetinirea operațiunii. De asemenea, nu dealoca spațiul folosit după execuție.

Urmează sintaxa pentru instrucțiunea Delete.

ȘTERGERE DE LA

sau

ȘTERGERE DE UNDE

Drop Statement

Instrucțiunea Drop elimină nu numai toate înregistrările tabelului din baza de date fără nicio condiție, dar și elimină permanent structura tabelului, constrângerile de integritate, indexurile și privilegiile de acces ale tabelului relevant din baza de date. Deci, toate relațiile pentru alte tabele nu mai există, iar informațiile despre tabel sunt eliminate din dicționarul de date. Deci, dacă utilizatorul dorește să refolosească tabelul, el/ea trebuie să definească structura tabelului și toate celel alte referințe la tabel din nou. Drop este o comandă DDL și după executarea comenzii, nu poate fi derulată din nou, deoarece comanda Drop utilizează un angajament automat. Prin urmare, utilizatorul ar trebui să fie foarte atent în utilizarea acestei comenzi. Declarația de eliminare nu poate fi aplicată pe tabelele de sistem și, de asemenea, nu poate fi utilizată pentru tabelele care au constrângeri de cheie străină.

Comanda Drop poate fi folosită nu numai pentru tabelele SQL, ci și pentru bazele de date, vizualizările și coloanele de tabel, iar toate datele stocate în aceste obiecte se pierd pentru totdeauna împreună cu obiectele.

Următorul este sintaxa tipică pentru comanda Drop.

DROP TABLE

Care este diferența dintre Delete și Drop?

1. Comenzile Delete and Drop elimină datele din tabel dintr-o bază de date.

2. Dar instrucțiunea Delete efectuează ștergerea condiționată, în timp ce comanda Drop șterge înregistrările întregi din tabel.

3. De asemenea, instrucțiunea Delete elimină numai rândurile din tabel și păstrează structura tabelului la fel, în timp ce comanda Drop elimină toate datele din tabel și structura tabelului, de asemenea, elimină toate celel alte referințe din baza de date.

4. Delete este o instrucțiune DML, în timp ce Drop este o comandă DDL. Deci, operațiunea de ștergere poate fi anulată și nu este confirmată automat, în timp ce operațiunea de eliminare nu poate fi anulată în niciun fel, deoarece este o declarație de confirmare automată.

5. Comanda de eliminare nu poate fi folosită în tabelele la care au fost referite constrângeri de cheie străină, în timp ce comanda de ștergere poate fi folosită în locul acesteia.

6. Comanda Drop ar trebui folosită cu atenție, cu o bună înțelegere în comparație cu instrucțiunea Delete din aplicațiile SQL.

Recomandat: