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

La requête s'exécute rapidement, mais s'exécute lentement dans la procédure stockée

OK, nous avons déjà eu des problèmes similaires à celui-ci.

La façon dont nous avons résolu ce problème était de créer des paramètres locaux à l'intérieur du SP, tels que

DECLARE @LOCAL_Contract_ID int, 
        @LOCAL_dt_From smalldatetime, 
        @LOCAL_dt_To smalldatetime, 
        @LOCAL_Last_Run_Date datetime

SELECT  @LOCAL_Contract_ID = @Contract_ID, 
        @LOCAL_dt_From = @dt_From, 
        @LOCAL_dt_To = @dt_To, 
        @LOCAL_Last_Run_Date = @Last_Run_Date

Nous utilisons ensuite les paramètres locaux à l'intérieur du SP plutôt que les paramètres qui ont été transmis.

Cela a généralement résolu le problème pour nous.

Nous pensons que cela est dû au reniflage des paramètres, mais nous n'avons aucune preuve, désolé... X-)

MODIF :

Jetez un œil à Approches différentes pour corriger le reniflage des paramètres SQL Server pour quelques exemples perspicaces, des explications et des correctifs.