Bonjour,
J'ai une table très volumineuse (plusieurs centaines de millions de lignes).
Je souhaite supprimer les lignes selon un critère, qui est le premier membre de la PK (un select count(*) avec un critère sur le champ est très rapide).
Ca donne :
Sauf que ça représente environ 95% des lignes de la table, donc c'est particulièrement volumineux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part delete msk where codsoc = 100;
=> Explosion du rollback segment et tout le tralala.
Outre demander au DBA d'agrandir le tablespace temporaire, ou faire plusieurs requêtes avec un critère plus significatif, existe-t-il une option permettant de dire à Oracle "ben pour une fois, cette requête, tu la gères pas en transaction" ?
En bref, faire un truncate avec une clause where.
Partager