代码如下
_variant_t vra;
VARIANT *vt1 = NULL;
UpdateData(TRUE);
_CommandPtr cmd;  //command object
_RecordsetPtr rs;    //recordset object
_ConnectionPtr conn; //connection object
    CString m_select;
    m_select="select s_no,s_name from Student where s_no='991102'";
cmd.CreateInstance( __uuidof(Command));
rs.CreateInstance(__uuidof(Recordset));
conn.CreateInstance(__uuidof(Connection));
    conn=g_GlobalMag.m_connection; cmd->ActiveConnection = conn;
    cmd->CommandText=m_select.GetBuffer(0);
cmd->CommandType= adCmdText;
    rs->CursorType=adOpenStatic;
rs->LockType=adLockOptimistic;
rs = cmd->Execute(NULL,NULL, adCmdText);
    if(rs->adoEOF||rs->BOF)
::MessageBox(NULL,"wrong","无记录",MB_OK);
try
{
rs->MoveFirst();///移到首条记录
// rs->MoveNext();
    if(rs->adoEOF||rs->BOF)
::MessageBox(NULL,"wrong","无记录",MB_OK);
rs->Delete(adAffectCurrent);///删除当前记录
rs->Update();///保存到库中  
// rs=NULL;
//    rs = cmd->Execute(NULL,NULL, adCmdText);
    }
catch(_com_error &error)
{
CString Error;
    
_bstr_t bstrSource(error.Source());
_bstr_t bstrDescription(error.Description());

    Error.Format( "数据库错误\n\tCode = %08lx\n\tCode meaning = %s\n\tSource = %s\n\tDescription = %s\n",error.Error(),error.ErrorMessage(),
(LPCSTR)bstrSource, (LPCSTR)bstrDescription ); //throw CDBError(Error);
::MessageBox(NULL,Error,"模块错误!",MB_OK);
}
错误是对象不能提供执行所需的操作
为什么?