Partage via


Procédures stockées - Exécution

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Télécharger le pilote OLE DB

Lorsque vous exécutez des instructions, appeler une procédure stockée sur la source de données (au lieu d'exécuter ou de préparer directement une instruction dans l'application cliente) peut fournir :

  • des performances accrues ;

  • une charge réseau réduite ;

  • une cohérence améliorée ;

  • une précision améliorée ;

  • des fonctionnalités supplémentaires.

Le fournisseur OLE DB Driver pour SQL Server prend en charge trois des mécanismes que les procédures stockées SQL Server utilisent pour retourner des données :

  • Chaque instruction SELECT dans la procédure génère un jeu de résultats.

  • La procédure peut retourner des données par l'intermédiaire de paramètres de sortie.

  • La procédure peut avoir un code de retour de type entier.

L'application doit être en mesure de gérer toutes ces sorties provenant de procédures stockées.

Des fournisseurs OLE DB différents retournent des paramètres de sortie et des valeurs de retour à des moments différents pendant le traitement des résultats. Dans le cas du pilote OLE DB pour SQL Server, les paramètres de sortie et les codes de retour ne sont pas fournis tant que le consommateur n’a pas extrait ou annulé les jeux de résultats retournés par la procédure stockée. Les codes de retour et les paramètres de sortie sont retournés dans le dernier paquet TDS provenant du serveur.

Les fournisseurs utilisent la propriété DBPROP_OUTPUTPARAMETERAVAILABILITY pour signaler quand les paramètres de sortie et les valeurs de retour sont retournés. Cette propriété figure dans le jeu de propriétés DBPROPSET_DATASOURCEINFO.

Le pilote OLE DB pour SQL Server définit la propriété DBPROP_OUTPUTPARAMETERAVAILABILITY sur DBPROPVAL_OA_ATROWRELEASE pour indiquer que les codes de retour et les paramètres de sortie ne sont pas retournés tant que le jeu de résultats n’est pas traité ou libéré.

Voir aussi

Procédures stockées