连接数据库




本文由 代码助手软件 整理发布 内容与本软件无关 更惬意的读、更舒心的写、更轻松的发布









0 连接数据库

#import "c:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF") rename("BOF","adoBOF")
_ConnectionPtr m_pConnection; // 数据库连接
_ConnectionPtr m_pConnectionStu;// 学生信息数据库
BOOL ConnectDatabase();   //连接数据库 
BOOL CketangApp::ConnectDatabase ()
{
  ::CoInitialize( NULL );
  
  
  try{
  
  
  // 试题数据库连接
  HRESULT hr= m_pConnection.CreateInstance(__uuidof(Connection));
  
  if (FAILED(hr))
  {
    AfxMessageBox(_T("创建连接实例失败--试题"));
    return FALSE;
  }
  
  hr=m_pConnection->Open(
  _T("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=ShiTi.accdb"),
  _T(""),
  _T(""),
  adModeUnknown
  );
  
  
  if (FAILED(hr))
  {
    AfxMessageBox(_T("ShiTi.accdb 数据库不存在 或 路径不正确"));
  }
  
  
  
  //学生数据库连接
  hr= m_pConnectionStu.CreateInstance(__uuidof(Connection));
  if (FAILED(hr))
  {
    AfxMessageBox(_T("创建连接实例失败--学生"));
    return FALSE;
  }
  
  
  hr=m_pConnectionStu->Open(
  _T("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Student.accdb"),
  _T(""),
  _T(""),
  adModeUnknown

  ); 

  
  
  
  if (FAILED(hr))
  {
    AfxMessageBox(_T("Student.accdb 数据库不存在或路径不正确"));
  }
  
  
  
}
   catch(_com_error&e){
       AfxMessageBox(_T("数据库已经被打开  或 不存在 或路径不正确"));;
       return FALSE;
   }
}
  int CketangApp::ExitInstance()
  {
  // TODO: Add your specialized code here and/or call the base class
  
  
  if(m_pConnection)
    if(m_pConnection->State) /////////james
      m_pConnection->Close(); 
      
      
  if(m_pConnectionStu)
    if(m_pConnectionStu->State) /////////james
      m_pConnectionStu->Close(); 
      
      
      
  GdiplusShutdown(gdiplusToken);  
  return CWinApp::ExitInstance();
}


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。