Sobes.tech
Junior — Middle

Ktorý príkaz — TRUNCATE alebo DELETE — sa vykonáva rýchlejšie pri čistení tabuľky v databáze?

sobes.tech AI

Odpoveď od AI

Príkaz TRUNCATE sa zvyčajne vykonáva rýchlejšie ako DELETE pri čistení celej tabuľky. Je to spôsobené tým, že TRUNCATE neodstraňuje riadky po jednom, ale jednoducho resetuje údaje tabuľky, uvoľňuje dátové stránky a resetuje čítače, čo je oveľa rýchlejšie. Kým DELETE odstraňuje riadky po jednom, čo môže byť pomalšie, najmä pri veľkých objemoch dát, a generuje viac transakčných záznamov. Avšak, DELETE umožňuje použitie podmienok WHERE a triggerov, zatiaľ čo TRUNCATE nie.