解决方案 »

  1.   

    打印下WHERE子句是否正确,  使用扑捉异常的方式进行ADO+SQL代码编写:try
    {
      //do sth...
    }
    catch(_com_error e)
    {
        ReportError(e);
    }
    void CXXXDlg::ReportError(_com_error& e)
    {
    CString s;
    s.Format(_T("Source:\t%s\nError:\t%s\nDescription:\t%s"),(LPCTSTR)e.Source(), e.ErrorMessage(), (LPCTSTR)e.Description());
    AfxMessageBox(s);
    }另外,这个帖子放在数据库栏比较合适
      

  2.   

    你的代码运行自然是这个结果,因为你的一堆的Format代码,除了最后一行外,都是无用功,因为都在修改同一个变量strSQL,都会被下一个覆盖,因此只有最后一个是有作用的,而最后一个就是生存能力。