Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Differenza del tempo di esecuzione della stored procedure SQL

Il problema con la differenza tra chiamare SP direttamente e dal codice .NET, forse a causa dello sniffing dei parametri. SQL Server potrebbe memorizzare nella cache un piano di esecuzione che non è ottimale per i parametri che stai passando dal codice.

Per evitare ciò, prova ad aggiungere WITH RECOMPILE alla tua definizione SP, ad es.

CREATE PROCEDURE MySP (
    ... parameters...
) WITH RECOMPILE

AS

BEGIN
   ...