Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Procédure stockée prenant du temps à s'exécuter

Ressemble à reniflage de paramètres.

Voici une belle explication :Je sens un paramètre !

Fondamentalement, le serveur sql a mis en cache le plan d'exécution des requêtes pour les paramètres avec lesquels il a été exécuté pour la première fois, de sorte que le plan n'est pas optimal pour les nouvelles valeurs que vous transmettez. Lorsque vous exécutez la requête directement, le plan est généré à ce moment-là, c'est pourquoi c'est rapide.

Vous pouvez marquer manuellement la procédure de recompilation à l'aide de sp_recompile ou utilisez l'option With Recompile dans sa définition pour qu'elle soit compilée à chaque exécution.