dao连接数据库的方法和使用。

来源:互联网 发布:淘宝解id锁有人解过吗 编辑:程序博客网 时间:2024/05/01 15:31
本人花不少时间研究    VC中用DAO连接ACCESS数据库 的连接及修改问题
今天终于解决了
关键源码如下:


void CDAOTestDlg::OnOK() 
{
 // TODO: Add extra validation here
  try 
  {
   //第一种方法在VC6.0中通过
   CDaoDatabase db;
   CString str;
   //此处据实际路径修改
   str="D:\\Phone.mdb";
   //AfxGetModuleState()->m_dwVersion   =   0x0601;
   db.Open(str);
   db.Execute("delete * from phones");
   db.Close();

 //第二种方法通过,需把数据库文件DAOTest.mdb调至debug目录下
/*
    TCHAR m_tzFileName[250]; 
  GetModuleFileName(NULL, m_tzFileName, MAX_PATH);        
  lstrcpy(m_tzFileName + lstrlen(m_tzFileName) - 4, TEXT(".mdb"));

  CDaoDatabase db;
  db.Open((LPCTSTR)m_tzFileName);
  db.Execute("delete * from phones");
  db.Close();
*/
   //下面是第三种方法,验证通过
/*  CDaoDatabase db;
  CDaoRecordset RecSet(&db);
  CString sqlcmd="select * from phones where pole='1234'";
  db.Open("DAOTest.mdb",false,false);
  RecSet.Open(AFX_DAO_USE_DEFAULT_TYPE,sqlcmd,NULL);
  db.Execute("delete * from phones");
  db.Close();
*/
  }
  catch(CDaoException * pe)
  {
   
  AfxMessageBox(pe->m_pErrorInfo->m_strDescription,
    MB_ICONEXCLAMATION);
  MessageBox("数据出错!", "增加数据", MB_ICONERROR+MB_OK);
  pe->Delete();
  }
  
}