SQLNumResultCols

对于执行的语句,SQL Server Native Client ODBC 驱动程序并不访问服务器以报告结果集中的列数。 在此情况下,SQLNumResultCols 不会导致服务器往返。 类似于 SQLDescribeColSQLColAttribute,对准备的语句而不是执行的语句调用 SQLNumResultCols 将产生服务器往返。

当某个 Transact-SQL 语句或语句批处理返回多个结果行集时,结果集列的个数可能在各个集之间有所变化。 应该为每个集都调用 SQLNumResultCols。 如果列数有变化,应用程序应该在提取行结果之前重新绑定数据值。 有关处理多个结果集返回值的详细信息,请参阅 SQLMoreResults

从 SQL Server 2012 开始,数据库引擎中的改进功能允许 SQLNumResultCols 获取关于预期结果的更准确描述。 这些更准确的结果可能与 SQL Server 以前版本中的 SQLNumResultCols 所返回的值有所不同。 有关详细信息,请参阅元数据发现

请参阅

概念

ODBC API 实现细节

其他资源

SQLNumResultCols 函数