powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / кол-во записей =-1?? (ADO,VC++ )
3 сообщений из 3, страница 1 из 1
кол-во записей =-1?? (ADO,VC++ )
    #32455591
panza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не могу понять,почему у меня кол-во записей рекордсета == -1
Записи-то в рекордсете есть,я их в отладчике вижу.


Может быть,я что то не так делаю??



if(FAILED(::CoInitialize(NULL)))
return;

// Define Connection object pointer.
// Initialize pointers on define.
// These are in the ADODB:: namespace
_ConnectionPtr pConnection = NULL;
_CommandPtr pCmd = NULL;
_ParameterPtr pPrm = NULL;


try
{
// Open a connection using OLE DB syntax.
TESTHR(pConnection.CreateInstance(__uuidof(Connection)));
pConnection->ConnectionString = "Provider=SQLOLEDB.1;Data Source=ststest;Initial Catalog=Pubs;Integrated Security=SSPI";
pConnection->Open("","","",adConnectUnspecified);

// Create Command object for stored procedure call
TESTHR(pCmd.CreateInstance(__uuidof(Command)));
pCmd->ActiveConnection = pConnection;
pCmd->CommandText = "byroyalty";

// Define command parameter
pPrm = pCmd->CreateParameter("percentage", adInteger, adParamInput, sizeof(long), (long)100);
pCmd->Parameters->Append(pPrm);

// Execute stored procedure
_RecordsetPtr pRs = pCmd->Execute(NULL, NULL, adCmdStoredProc);
_bstr_t bstrAUID;

int s = pRs->RecordCount;
while (!pRs->EndOfFile)// проверяю s == -1
{
bstrAUID = pRs->Fields->GetItem("au_id")->Value;
printf("%s\n", (LPCSTR) bstrAUID);

pRs->MoveNext();
}

// Cleanup objects before exit
pRs->Close();
pConnection->Close();
}

catch(_com_error &e)
{
PrintComError(e);
}

// Wait here for user to see the output..
printf("\nPress any key to continue...");
getch();

::CoUninitialize();
...
Рейтинг: 0 / 0
кол-во записей =-1?? (ADO,VC++ )
    #32455629
Alex_2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если курсор серверный, то он всегда быдет возвращать -1, нужно указать курсор = adUseClient (клиентский)...
...
Рейтинг: 0 / 0
кол-во записей =-1?? (ADO,VC++ )
    #32455644
panza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to Alex_2003

Действительно,теперь все good.
спасибо.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / кол-во записей =-1?? (ADO,VC++ )
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]