Qu'est-ce qui est plus rapide : supprimer des données avec la commande DELETE ou vider la table avec TRUNCATE ?
sobes.tech IA
Réponse de l'IA
La commande TRUNCATE fonctionne généralement plus rapidement que DELETE lorsque vous devez supprimer toutes les données d'une table. Cela est dû au fait que TRUNCATE ne supprime pas les lignes une par une, mais vide rapidement toute la table, en réinitialisant souvent les pages de données et sans enregistrer chaque opération de suppression dans le journal des transactions.
Contrairement à DELETE, qui supprime les lignes une par une et peut déclencher des déclencheurs, TRUNCATE ne déclenche pas de déclencheurs et ne peut pas être utilisé avec des conditions WHERE — il supprime toutes les données en une seule fois.
Exemple :
-- Supprimer toutes les lignes (plus lent)
DELETE FROM users;
-- Nettoyage rapide de la table
TRUNCATE TABLE users;
Ainsi, si vous devez rapidement nettoyer toute la table, il est préférable d'utiliser TRUNCATE.