Nøgleforskel: DELETE er en kommando, der gør det muligt for programmøren at slette en enkelt række fra en tabel i en SQL-database. Kommandoen falder under DML eller snarere Data Manipulation Language. TRUNCATE-kommandoen gør det muligt for programmøren at slette alle rækker fra en tabel i en SQL-database. Kommandoen falder ind under Data Definition Language eller DDL.
SQL-servere bruges til at gemme data, der er tilgængelige på et netværk eller endda på internettet. SQL-servere spiller en primær rolle, når det gælder lagring og hentning af data på tværs af internettet. Hvis det ikke var for serverne, ville internettet ikke være det, det er nu.
Vilkårene DELETE og TRUNCATE er vilkår, der er vigtige, når det kommer til at slette data fra disse servere. Der er forskellige måder at tilføje data på og fjerne data fra en server. Mens vi ikke vil gå i detaljer om at tilføje data; disse to ord gør jobbet med at fjerne dataene. Hver ord udfører dog en anden funktion og sletter dataene på en anden måde.
DELETE er en kommando, der gør det muligt for programmøren at slette en enkelt række fra en tabel i en SQL-database. Kommandoen falder under DML eller snarere Data Manipulation Language. Dette sprog er hovedsageligt ansvarlig (som navnet antyder) manipulation af data. Det bruges også til at gemme, ændre, hente, slette og opdatere data og indeholder udtryk som SELECT, INSERT, UPDATE, DELETE osv. Hovedfordelen ved at bruge dette sprog og denne kommando er, at det tillader programmereren at slette en bestemt række fra alle tilgængelige rækker af data. Det gør det også muligt for programmøren at bruge filtre og betingelser, der tillader sletning af bestemte rækker ved at søge søgeord.
TRUNCATE-kommandoen gør det muligt for programmøren at slette alle rækker fra en tabel i en SQL-database. Kommandoen falder ind under Data Definition Language eller DDL. DDL-sproget bruges til at opbygge og ændre strukturen af dine tabeller og andre objekter i databasen. Det har andre kommandoer som CREATE, ALTER, DROP, COMMENT, RENAME osv. Den største fordel ved at bruge dette sprog er, at det tillader programmereren at slette alle rækker fra en tabel. Derudover fjerner den også alle poster fra en tabel, inklusive mellemrum, der er allokeret til disse poster.
Der er en anden stor forskel mellem de to. I DELETE-funktionen er der tilbagekaldsindstilling, hvor systemet holder en logfil over de filer, der blev slettet. Disse filer kan genoprettes af programmøren, hvis det er nødvendigt. Men i TRUNCATE-funktionen er denne mulighed ikke tilgængelig. Når filerne er slettet, er de væk fra systemet. Denne mangel på at holde logfiler er, hvad der gør TRUNCATE-funktionen hurtigere end DELETE-funktionen.
Sammenligning mellem Slet og Afkort:
Slet | afkort | |
Formål | Er en kommando, der giver programmereren mulighed for at slette en række i en tabel | Er en kommando, der gør det muligt for programmøren at slette alle rækker fra en tabel |
Sprogkommando | Data manipulationssprog | Data Definition Sprog |
Udførelse | DELETE-kommandoen udføres ved hjælp af en rækkelås, hvor hver række i tabellen er låst til sletning | TRUNCATE-kommandoen låser tabellen og siden, men ikke hver række |
Sletter | Sletter specificerede data, hvor tilstanden findes | Fjerner alle data i tabellen |
filtre | Tillader filtre at slette visse data | Tillader ikke filtre |
Udløser | Aktiverer en trigger, fordi operationen logges individuelt | kan ikke aktivere en trigger, fordi operationen ikke logger individuelle rader sletninger |
Performance Time | Langsommere i ydeevne, da det holder logfiler | Hurtigere end Slet, da det ikke holder logfiler |
Tilbagekaldelse (Fortryd) | Giver mulighed for tilbagekaldelse eller fortrydelse | Tillader ikke tilbagekaldelse eller fortrydelse |