我在 sql server 数据库中有一个存储过程,它包含一个 select 语句,因此在调用存储过程时它应该作为结果集返回:
Create Procedure SqlTxFunctionTesting (
@inparam decimal(15,3),
@outparam decimal(15,3) output,
@inoutparam decimal(15,3) output)
AS
BEGIN
set @outparam = @inparam * 2;
set @inoutparam = @inoutparam * 4;
select * from resultsetdata;
return @inparam * 8;
END
我正在使用执行存储过程
m_pICommandText->Execute(NULL, IID_IMultipleResults,
¶ms, &nRowsAffected, (IUnknown **)&m_IMultipleResultSets)))
并尝试使用
HRESULT getResultSetRetCode = m_IMultipleResultSets->GetResult(NULL, 0, IID_IRowset, &
nRowsAffected, (IUnknown **)&m_pIRowset);
第一次调用返回 S_OK,m_pIRowset 为 NULL,第二次调用返回 DB_S_NORESULT。为什么它不返回 select 语句的结果集?在我开枪之前请帮忙。