如果用_RecordsetPtr的Open方法执行的是存储过程,请问如何传递参数呢?

小小的一株含羞草 2005-02-03 04:50:48
例如
pRs->Open("selectoffice",
m_pConnection.GetInterfacePtr(),
adOpenStatic, adLockReadOnly, adCmdStoredProc);

那该在open前还是open后传递参数,用什么函数传递?多谢
...全文
243 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
DebugXP 2005-02-04
  • 打赏
  • 举报
回复
错了,应该是:
rs->Open("exec 存储过程 '参数1','参数2'",.....
DebugXP 2005-02-04
  • 打赏
  • 举报
回复
rs->Open("exec '参数1','参数2'",.....
  • 打赏
  • 举报
回复
to DebugXP(NULL):

啊,可以的,要把最后那个option参数设置为adCmdUnknown:)

多谢各位啦
  • 打赏
  • 举报
回复
to DebugXP(NULL):

这样写好像不行啊,一执行这句就提示错误啦。
kugou123 2005-02-03
  • 打赏
  • 举报
回复
参考以下代码:
http://www.xiaozhou.net/cooldog/blogview.asp?logID=70
http://www.xiaozhou.net/cooldog/blogview.asp?logID=58

应该没有其他方法了。
  • 打赏
  • 举报
回复
这种方法我知道,不过我就是想知道有没有可以不用command对象传递参数的方法,多谢:)
快乐鹦鹉 2005-02-03
  • 打赏
  • 举报
回复
这是我调用存储过程的方法:
try
{
_CommandPtr cmmd;
_ParameterPtr param;
HRESULT hr = cmmd.CreateInstance(__uuidof(Command));
if(FAILED(hr))
{
m_sLastError = "创建_CommandPtr对象失败";
((CPetrelApp*)AfxGetApp())->GetErrorLog()->WriteErrorInfo("CDataBase::GetAllShipPosInfo",m_sLastError);
return false;
}
m_sLastError = _T("");
cmmd->ActiveConnection = m_piConnection;//需要使用的ADO连接
cmmd->CommandType = adCmdStoredProc;
cmmd->CommandText=_bstr_t("GetAllShipPosInfo");
param = cmmd->CreateParameter("",adTinyInt, adParamInput, sizeof(BYTE),(BYTE)bShowAIS);
cmmd->Parameters->Append(param);
param = cmmd->CreateParameter("",adTinyInt, adParamInput, sizeof(BYTE), (BYTE)bShowOwner);
cmmd->Parameters->Append(param);
param = cmmd->CreateParameter("",adBigInt, adParamInput, sizeof(long),(long)nOverdueTime);
cmmd->Parameters->Append(param);
param = cmmd->CreateParameter("",adTinyInt, adParamInput, sizeof(BYTE),(BYTE)bShowHistory);
cmmd->Parameters->Append(param);
param = cmmd->CreateParameter("@ret",adChar, adParamReturnValue,1);
cmmd->Parameters->Append(param);

_RecordsetPtr piRecordset;
piRecordset = cmmd->Execute(NULL,NULL,adCmdStoredProc);

4,018

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧