Junior — Middle
Wat is sneller: gegevens verwijderen met de DELETE-opdracht of de tabel leegmaken met TRUNCATE?
sobes.tech AI
Antwoord van AI
Het commando TRUNCATE werkt meestal sneller dan DELETE wanneer je alle gegevens uit een tabel wilt verwijderen. Dit komt doordat TRUNCATE geen rijen één voor één verwijdert, maar de hele tabel snel leegt, vaak door datagebieden te resetten en geen afzonderlijke verwijderbewerkingen in het transactie-log op te nemen.
In tegenstelling tot DELETE, dat rijen één voor één verwijdert en triggers kan activeren, activeert TRUNCATE geen triggers en kan het niet worden gebruikt met WHERE-voorwaarden — het verwijdert alle gegevens in één keer.
Voorbeeld:
-- Verwijder alle rijen (langzamer)
DELETE FROM users;
-- Snelle leegmaak van de tabel
TRUNCATE TABLE users;
Dus, als je snel de hele tabel wilt legen, is het beter om TRUNCATE te gebruiken.