O comando TRUNCATE remove rapidamente todas as linhas da tabela. Possui o mesmo efeito do comando DELETE não qualificado (sem WHERE), mas como na verdade não varre a tabela é mais rápido. É mais útil em tabelas grandes.
O comando TRUNCATE não pode ser usado quando existe referência de chave estrangeira de outra tabela para a tabela. Neste caso a verificação da validade tornaria necessária a varredura da tabela, e o ponto central é não fazê-la.
O comando TRUNCATE não executa nenhum gatilho ON DELETE definido pelo usuário, porventura existente na tabela.