Partage via


SQLNumResultCols

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

Pour les instructions exécutées, le pilote ODBC SQL Server Native Client ne visite pas le serveur pour signaler le nombre de colonnes dans un jeu de résultats. SQLNumResultCols ne provoque alors pas de boucle de serveur. À l'instar de SQLDescribeCol et SQLColAttribute, l'appel de SQLNumResultCols sur des instructions préparées mais non exécutées génère une boucle de serveur.

Lorsqu’une instruction Transact-SQL ou un lot d’instructions retourne plusieurs jeux de lignes de résultats, il est possible que le nombre de colonnes de jeu de résultats passe d’un jeu à un autre. SQLNumResultCols doit être appelé pour chaque ensemble. Lorsque le nombre de colonnes change, l'application doit réassocier les valeurs de données avant d'extraire les résultats de ligne. Pour plus d'informations sur la gestion de plusieurs retours de jeux de résultats, consultez SQLMoreResults.

Les améliorations apportées au moteur de base de données à partir de SQL Server 2012 (11.x) permettent à SQLNumResultCols d’obtenir des descriptions plus précises des résultats attendus. Ces résultats plus précis peuvent différer des valeurs retournées par SQLNumResultCols dans les versions précédentes de SQL Server. Pour plus d’informations, consultez Découverte des métadonnées.

Voir aussi

SQLNumResultCols, fonction
Détails de l’implémentation d’API ODBC