Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > ADO


Автор: vbif2004 16.12.2009, 15:03
Уважаемы господа программисты Помогите!
Пытаюсь подключить БД Access к диалоговому проекту с помощью  элемента управления Data Grid, нашла код:

void CC1Dlg::OnButton1() 
{ 
// HRESULT        hr ;          надо объявить в c1Dlg.h в разделе protected 
// _RecordsetPtr ebRecS;  надо объявить в c1Dlg.h в разделе protected 
try { // Секция попытки иннициализации соединения с БД 
  ebRecS.CreateInstance(__uuidof(Recordset)); // Объевление гибкого указателя 
//Далее открывается объект отображения набора записей 
  ebRecS->Open("select * from operations",        // SQL команда вывода всех записей БД 
                              "DSN=data12;UID=;PWD=;",  //ODBC источник данных 
                               adOpenStatic, 
                               adLockOptimistic, 
                               adCmdText); 
//Далее связывание DataGrid Control с объектом отображения набора записей 
  m_grid.SetRefDataSource((LPUNKNOWN) ebRecS); 
  m_grid.Refresh(); 
} 
// Секция обработки ошибок при открытии  соединения с ODBC и БД 
catch(_com_error &ce) 
 { 
  _bstr_t e_Src(ce.Source());            // Источник ошибки 
  _bstr_t e_Desc(ce.Description()); // Текст с описанием ошибки 
  MessageBox("ОШИБКА:   "+  e_Src +"\n"+"ПРИЧИНА:"+  e_Desc, 
        "Ошибка иннициализации БД", 
        MB_ICONERROR); 
 } 
catch(...)    //ошибка нерассмотренного типа 
 { MessageBox("все совсем плохо - ошибка неизвестного типа");} 
} 

Studio  ругается на строки  связывания объекта DataGrid Control c объектом отображения набора записей. Может быть в Visual Studio 2005 это делается по-другому?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)