* Bonjour, *
J'avais un doute sur l'impact des instructions telles que "ALTER TABLE .... DISABLE TRIGGER ALL" ou "ALTER TABLE ... ENABLE TRIGGER ALL" sur le Plan Cache des Query et procédures.
Je croyais que seules les "vraies" modifications de structures (exemple ajout ou modification du type d'une colonnes, etc) avaient pour effet d'invalider le Plan Cache liés aux objets (tables etc..) dont la structure a été modifiée, mais pas la simple activation ou désactivation des triggers, même si la syntaxe utilise le mot clé ALTER.
Et bien j'avais tort ! En effet, pour en avoir le cœur net, j'ai analysé les événements CacheMiss, CacheInsert, CacheRemove etc, et je me suis aperçu avec un peu d'étonnement que les instructions telles que ALTER TABLE DISABLE/ENABLE TRIGGER ALL, invalident bien les Plan Cache !
Alors ma question est la suivante :
"Pourquoi les instructions comme ALTER TABLE ... DISABLE/ENABLE TRIGGER ALL" appliquées à une table ont pour effet d'invalider le Plan Cache des query et procédures afférentes à la dite table ?"
Remarque :
- L'utilisation des instructions telles que ALTER TABLE .... DISABLE/ENABLE TRIGGER ALL est assez courante dans certaines tâches planifiées ou autres traitements particuliers divers ! C'est une des rasions pour lesquelles j'ai voulu investiguer le sujet.
Si quelqu'un veut bien nous éclairer.
Merci,
A+
Partager