Partager via


Appeler des procédures stockées (ODBC)

Lorsqu’une instruction SQL appelle une procédure stockée à l’aide de la clause d’échappement ODBC CALL, le pilote Microsoft SQL Server envoie la procédure à SQL Server à l’aide du mécanisme d’appel de procédure stockée distante (RPC). Les requêtes RPC contournent la majeure partie de l’analyse des instructions et du traitement des paramètres dans SQL Server et sont plus rapides que l’utilisation de l’instruction Transact-SQL EXECUTE.

Pour obtenir un exemple d’application qui illustre cette fonctionnalité, consultez Les codes de retour de processus et les paramètres de sortie (ODBC).

Pour exécuter une procédure en tant que RPC

  1. Construisez une instruction SQL qui utilise la séquence d’échappement ODBC CALL. L’instruction utilise des marqueurs de paramètres pour chaque paramètre d’entrée, d’entrée/sortie et de sortie, et pour la valeur de retour de procédure (le cas échéant) :

    {? = CALL procname (?,?)}  
    
  2. Appelez SQLBindParameter pour chaque paramètre d’entrée, d’entrée/sortie et de sortie, et pour la valeur de retour de procédure (le cas échéant).

  3. Exécutez l’instruction avec SQLExecDirect.

Remarque

Si une application envoie une procédure à l’aide de la syntaxe Transact-SQL EXECUTE (par opposition à la séquence d’échappement ODBC CALL), le pilote ODBC SQL Server transmet l’appel de procédure à SQL Server en tant qu’instruction SQL plutôt qu’en tant qu’instruction RPC. En outre, les paramètres de sortie ne sont pas retournés si l’instruction Transact-SQL EXECUTE est utilisée.

Voir aussi

Rubriques pratiques sur l’exécution de procédures stockées (ODBC)
Traitement par lots d’appels de procédure stockée
Exécution de procédures stockées
Appel d’une procédure stockée
procédures