Naar inhoud springen

Truncate (SQL)

Uit Wikipedia, de vrije encyclopedie
Dit is een oude versie van deze pagina, bewerkt door Eicheberger (overleg | bijdragen) op 27 mei 2022 om 19:06. (Intro leesbaarder. Stukje toegevoegd over de snelheid t.o.v. delete.)
Deze versie kan sterk verschillen van de huidige versie van deze pagina.

TRUNCATE is een opdracht in SQL waarmee de gegevens uit één tabel van een database worden gewist. De opdracht TRUNCATE TABLE table_name is logisch (maar niet fysiek) gelijk aan de opdracht DELETE FROM table_name. In een MySQL database wordt bij een TRUNCATE-opdracht ook de waarde van AUTO_INCREMENT op 0 gezet.[1]


De TRUNCATE-opdracht wordt geklassificeerd als data definition language (DDL) opdracht. Hierbij wordt een aantal handelingen overgeslagen die bij een DELETE-opdracht wel worden uitgevoerd, zoals de ON DELETE trigger. De tabel wordt in feite verwijderd en opnieuw aangemaakt. Dit levert vooral bij grote tabellen tijdwinst op. Het zorgt er echter ook voor dat de TRUNCATE-opdracht niet altijd gebruikt kan worden, bijvoorbeeld bij tabellen met een verwijzende sleutel.[1]

TRUNCATE Syntax

 TRUNCATE TABLE table_name

Zie ook