-
TRUNCATE vs. DELETE
Bonjour,
J'ai des problèmes de lenteur dans la gestion d'une BD PostgreSQL via Java et je me suis aperçu que si j'utilisais TRUNCATE au lieu du classique "DELETE FROM", j'améliorais très nettement les performances.
Quelqu'un sait-il pourquoi et dans quels cas vaut-il mieux utiliser l'une ou l'autre de ces commandes ?
Pour le détail de l'histoire, j'ai un cycle de traitement : effacement des données, écriture, attente, effacement etc.
Merci pour vos contributions
Sakalam
-
et la réponse ...
Désolé, il suffisait de lire l'aide jusqu'au bout :
"La commande TRUNCATE supprime rapidement toutes les lignes d'un ensemble de tables. Elle a le même effet qu'un DELETE non qualifié sur chaque table, mais comme elle ne parcourt par la table, elle est plus rapide. Cette commande est particulièrement utile pour les tables volumineuses."
S.