vc++6.0与ADo边接中的问题
_ParameterPtr mp_var,m_avar,m_bvar,m_cvar;
mp_var.CreateInstance(__uuidof(Parameter));
m_avar.CreateInstance(__uuidof(Parameter));
m_bvar.CreateInstance(__uuidof(Parameter));
m_cvar.CreateInstance(__uuidof(Parameter));
mp_var=m_pComm->CreateParameter(_bstr_t("var1"),adVarChar,adParamInput,5,vvar);
m_pComm->Parameters->Refresh();
m_pComm->Parameters->Append(mp_var);
m_avar=m_pComm->CreateParameter(_bstr_t("var2"),adInteger,adParamOutput,9,avar);
m_pComm->Parameters->Refresh();
m_pComm->Parameters->Append(m_avar);
m_bvar=m_pComm->CreateParameter(_bstr_t("var3"),adInteger,adParamOutput,9,bvar);
m_pComm->Parameters->Refresh();
m_pComm->Parameters->Append(m_bvar);
m_cvar=m_pComm->CreateParameter(_bstr_t("var4"),adInteger,adParamOutput,9,cvar);
m_pComm->Parameters->Refresh();
m_pComm->Parameters->Append(m_cvar);
_variant_t vNull;
vNull.vt=VT_ERROR;
vNull.scode=DISP_E_PARAMNOTFOUND;
m_pComm->Execute(&vNull,&vNull,adCmdStoredProc);
这几名有什么错,a ,b,c是int型的,我怎么把_ParameterPtr型的数据给int型
a=m_avar->Value;
b=m_bvar->Value;
c=m_cvar->Value;
问题点数:80、回复次数:2Top
1 楼gooyan(超级替补)回复于 2005-01-03 13:08:50 得分 40
参考一下
VT_I4
ADO取纪录字段值方式之一
_variant_t TheValue; //VARIANT数据类型
TheValue = m_pRecordset->GetCollect("BIG_NAME");//得到字段BIG_NAME的值
if(TheValue.vt!=VT_NULL)
m_List.AddString((char*)_bstr_t(TheValue));
//将该值加入到列表控件中
//取纪录字段值方式之二
_bstr_t TheValue1=m_pRecordset->Fields->GetItem("BIG_NAME")->Value;
CString temp=TheValue1.copy();
m_List.AddString(temp);
_variant_t _vValue;
_vValue=pSaveRs->GetCollect("mkbm");
if(_vValue.vt!=VT_NULL)
{
vValue.ChangeType(VT_BSTR);
mkbm=_vValue.bstrVal;
}
Top
2 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2005-01-03 13:47:37 得分 40
GetCollect得到的_variant_t类型,然后就可以char*转换为字符串等类型Top




