Mais là on entre dans un autre débat qui est celui de la compatibilité ascendante des produits... peut etre aussi qu'il y aura des instructions PL/SQL qui ne seront plus d'acutalité, peut-etre qu'il y aura des syntaxes sql qui ne seront plus d'acutalité etc... etc...Envoyé par LeoAnderson
On s'en sort plus si on s'interdit d'utiliser des outils par peur qu'ils ne fonctionnent plus un jour. Les HINT ont une utilité concrète et logique, ils sont recomandés, documentés, utilisés à fond dans les outils oracle etc... si leur pérénité était menacée, je pense qu'oracle le signalerait quelques versions auparavant. Je pense qu'il serait suicidaire de leur part de faire une rupture dans la compatibilité à ce niveau là.
Encore une fois, si on fait une utilisation irrationnelle des hint, alors oui on s'expose à des dangers, mais ce à n'importe quel moment. De toutes façons, si on ne comprend pas un plan d'exéction de manière générale (pour une requête complexe) on s'expose déja à de l'instabilité.
Pour mettre un HINT, il faut respecter plusieurs principes:
- comprendre le plan d'exécution original
- avoir une idée précise du plan d'exécution qu'on veux obtenir
- comprendre surtout pourquoi oracle ne choisi pas le bon plan
- comprendre ce que fait le HINT
- et comprendre pourquoi le HINT va aiguiller oracle dans le bon sens
Personnellement, je préfère assurer une stabilité des requêtes sensibles dans l'utilisation normale d'une application, et je prends le pari de la compatibilité ascendente d'oracle (et des autres produits), mais ce n'est que mon avis...
Partager