Как определить количество строк (полей) в таблице?
20.10.03 17:51: Перенесено модератором из 'C/C++' — ПК
Здравствуйте, Бодряк, Вы писали:
Б>Как определить количество строк (полей) в таблице?
Так строк или полей
можно так
int main(int argc, char* argv[])
{
_ConnectionPtr pConn;
_RecordsetPtr pRs;
_variant_t l;
CoInitialize(NULL);
pConn.CreateInstance(_uuidof(Connection));
pRs.CreateInstance(__uuidof(Recordset));
pConn->Open(L"Provider=SQLOLEDB;Data Source=?;Initial Catalog=?; User ID=?;Password=?;","","",adConnectUnspecified);
pRs->CursorLocation = adUseClient;
pRs->Open(L"select * from Employee",(_variant_t)(IDispatch*)pConn,adOpenForwardOnly,adLockUnspecified,-1);
long lFieldCnt = pRs->Fields->Count; // поля
long lRecordCnt = pRs->RecordCount; // строки - работает не всегда нужен клиентский курсор
return 0;
}
Здравствуйте, serega, Вы писали:
S>Здравствуйте, Бодряк, Вы писали:
Б>>Как определить количество строк (полей) в таблице?
S>S> .....
S> long lFieldCnt = pRs->Fields->Count; // поля
S> long lRecordCnt = pRs->RecordCount; // строки - работает не всегда нужен клиентский курсор
S>
Количество строк может считать SQL-сервер:
SELECT COUNT(*) FROM table
... << RSDN@Home 1.1 beta 2 >>
Здравствуйте, scorpio_cat, Вы писали:
_>Здравствуйте, serega, Вы писали:
S>>Здравствуйте, Бодряк, Вы писали:
Б>>>Как определить количество строк (полей) в таблице?
S>>S>> .....
S>> long lFieldCnt = pRs->Fields->Count; // поля
S>> long lRecordCnt = pRs->RecordCount; // строки - работает не всегда нужен клиентский курсор
S>>
_>Количество строк может считать SQL-сервер:
_>_>SELECT COUNT(*) FROM table
_>
кол-во полей тоже:
declare @id_table int
SELECT @id_table = id from sysobjects WHERE name='XXX'
SELECT count(name) FROM syscolumns WHERE id = @id_table
можно еще и во вьюв объединить и одним запросом сделать

... << RSDN@Home 1.1 beta 2 >>