Partager via


Meilleures pratiques pour appeler des procédures stockées compilées en mode natif

S’applique à : SQL Server base de données Azure SQL Azure SQL Managed Instance

Les procédures stockées compilées en mode natif sont les suivantes :

  • utilisées en général dans les parties ayant un impact sur les performances d'une application ;

  • exécutées fréquemment ;

  • Doit normalement être rapide.

L'avantage lié à l'utilisation d'une procédure stockée compilée en mode natif augmente avec le nombre de lignes et la quantité de logique qui est traitée par la procédure. Par exemple, une procédure stockée compilée en mode natif aura de meilleures performances si elle utilise un ou plusieurs des composants suivants :

  • Agrégation.

  • jointures de boucles imbriquées ;

  • opérations de sélection, insertion, mise à jour et suppression en plusieurs instructions ;

  • expressions complexes ;

  • logique procédurale, par exemple des instructions conditionnelles et des boucles.

Si vous devez traiter une seule ligne, l'utilisation d'une procédure stockée compilée en mode natif peut ne pas fournir un avantage en matière de performances.

Pour éviter que le serveur soit contraint de mapper les noms des paramètres et les types de conversion :

  • Faites correspondre les types de paramètres transmis à la procédure avec les types dans la définition de la procédure.

  • Utilisez des paramètres (sans nom) ordinaux lorsque vous appelez des procédures stockées compilées en mode natif. Pour une exécution optimale, n’utilisez pas de paramètres nommés.

L’utilisation de paramètres inefficaces avec des procédures stockées compilées en mode natif peut être détectée par le XEvent natively_compiled_proc_slow_parameter_passing :

  • Types incompatibles : reason=parameter_conversion
  • Paramètres nommés : reason=named_parameters
  • Valeurs PAR DÉFAUT : reason=default

Voir aussi

Procédures stockées compilées en mode natif