我在程序里这样写执行sql语句为什么返回 0 ??
CString sql = "EXEC spInsertPatchToQueue 'reafihfih'" ;
pcmd.CreateInstance(__uuidof(Command));
pcmd->ActiveConnection = m_pConnection;
pcmd->CommandText=_bstr_t(sql);
try
{
pcmd->Execute(NULL,NULL, adCmdText );
}
catch(...)
{
return 0;
}
return 1;

解决方案 »

  1.   

    csdn中搜索存储过程
    可以看到VC+ADO怎样调用存储过程
      

  2.   

    为什么返回 0 ?? 
    catch(...) //单步看看,catch到什么错误
    catch ADO错误用 catch(_com_error e)
      

  3.   

    存储过程不是你这样调的,类似于下面的代码   cmdByRoyalty.ActiveConnection = cnn1
       cmdByRoyalty.CommandText = "byroyalty"
       cmdByRoyalty.CommandType = adCmdStoredProc
       cmdByRoyalty.CommandTimeout = 15   _ParameterPtr param = cmdByRoyalty.CreateParameter(.....);
       param.Value = value;
       
       cmdByRoyalty.Append (param);   cmdByRoyalty.Execute();