SQLNumResultCols

Pour les instructions exécutées, le pilote ODBC SQL Server Native Client n'accède pas au serveur pour indiquer le nombre de colonnes d'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 ensembles de lignes de résultat, il est possible que le nombre de colonnes de jeu de résultats soit différent d'un ensemble de lignes à 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 à compter de SQL Server 2012 permettent à SQLNumResultCols d'obtenir des descriptions plus exactes des résultats attendus. Ces résultats plus exacts 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

Concepts

Détails d'implémentation d'une API ODBC

Autres ressources

Fonction SQLNumResultCols