Ado returns closed recordset
От: Bobro  
Дата: 04.09.02 04:57
Оценка:
MS SQL 2000
ХП на сервере

CREATE proc spTest
as
begin
declare @tbl table (obj_id int, meta_name varchar(255), meta_value sql_variant )
insert into @tbl select crmMetaInfo.[id] as obj_id, [name] as meta_name, key_value as meta_value from crmMetaInfo, crmMetaKeys where (crmMetaInfo.id = 8)and(crmMetaInfo.key_id = crmMetaKeys.[id])
select * from @tbl
end

ADO возвращает закрытый рекордсет

Код:
m_AdoConnection.CreateInstance(__uuidof(Connection) ) ;
m_AdoConnection->PutCursorLocation(adUseClient) ;
m_AdoConnection->Open (connectStr, "", "", -1) ;
AdoRecSet.CreateInstance(__uuidof(Recordset));

вариант 1:
AdoRecSet->Open( _bstr_t("exec spTest"), _variant_t((IDispatch *)m_AdoConnection,true), adOpenStatic, adLockReadOnly, -1 );

вариант 2:
AdoRecSet = m_AdoConnection->Execute(bstrQuery, &vRecordsAffected, adCmdText) ;


vRecordsAffected возвращает число 2, но рекордсет закрыт
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.