SQLNumResultCols

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

För exekverade satser besöker inte SQL Server Native Client ODBC-drivrutinen servern för att rapportera antalet kolumner i en resultatuppsättning. I detta fall orsakar SQLNumResultCols ingen serverrundresa. Liksom SQLDescribeCol och SQLColAttribute genererar anrop av SQLNumResultCols på förberedda men inte exekverade satser en serverrundresa.

När en Transact-SQL-sats eller satsbatch returnerar flera resultatradmängder är det möjligt att antalet resultatmängdskolumner ändras från en mängd till en annan. SQLNumResultCols bör anropas för varje mängd. När antalet kolumner ändras bör applikationen binda om datavärden innan radresultaten hämtas. För mer information om hantering av flera resultatuppsättningar, se SQLMoreResults.

Förbättringar i databasmotorn, med start från SQL Server 2012 (11.x), gör att SQLNumResultCols kan få mer exakta beskrivningar av de förväntade resultaten. Dessa mer exakta resultat kan skilja sig från de värden som returneras av SQLNumResultCols i tidigare versioner av SQL Server. För mer information, se Metadata Discovery.