主题:[讨论]C++6 读取MS Sql 中类型字段问题
在vs2008中执行成功,但在c++6中却出现类型不正确问题
请问应该怎么写?
CString pid,pdate,pno;
try
{
_CommandPtr cmmd;
HRESULT hr = cmmd.CreateInstance(__uuidof(Command));
if(FAILED(hr)) {
AfxMessageBox("Creaate SqlCommand failure!");
}
_ParameterPtr param;
param = cmmd->CreateParameter(""/*serieshost*/,adVarChar, adParamInput, 4,_variant_t(pid)); //_variant_t
cmmd->Parameters->Append(param);
param=cmmd->CreateParameter(""/*seriesdate*/,adVarChar,adParamInput,6,_variant_t(pdate));
cmmd->Parameters->Append(param);
param=cmmd->CreateParameter(""/*seriesid*/,adVarChar,adParamInput,5,_variant_t(pno));//_variant_t
cmmd->Parameters->Append(param);
cmmd->CommandText=_bstr_t("sp_downtimes_add");
cmmd->ActiveConnection=theApp.m_pConnection;
cmmd->CommandType=adCmdStoredProc;
_RecordsetPtr m_pRecordset;
m_pRecordset = cmmd->Execute(NULL, NULL, adCmdStoredProc);
cmmd.Detach();
}
catch(_com_error e)
{
CString errormessage;
errormessage.Format("Connect database failure!\r\n Errors:%s",e.ErrorMessage());
AfxMessageBox(errormessage);
}
请问应该怎么写?
CString pid,pdate,pno;
try
{
_CommandPtr cmmd;
HRESULT hr = cmmd.CreateInstance(__uuidof(Command));
if(FAILED(hr)) {
AfxMessageBox("Creaate SqlCommand failure!");
}
_ParameterPtr param;
param = cmmd->CreateParameter(""/*serieshost*/,adVarChar, adParamInput, 4,_variant_t(pid)); //_variant_t
cmmd->Parameters->Append(param);
param=cmmd->CreateParameter(""/*seriesdate*/,adVarChar,adParamInput,6,_variant_t(pdate));
cmmd->Parameters->Append(param);
param=cmmd->CreateParameter(""/*seriesid*/,adVarChar,adParamInput,5,_variant_t(pno));//_variant_t
cmmd->Parameters->Append(param);
cmmd->CommandText=_bstr_t("sp_downtimes_add");
cmmd->ActiveConnection=theApp.m_pConnection;
cmmd->CommandType=adCmdStoredProc;
_RecordsetPtr m_pRecordset;
m_pRecordset = cmmd->Execute(NULL, NULL, adCmdStoredProc);
cmmd.Detach();
}
catch(_com_error e)
{
CString errormessage;
errormessage.Format("Connect database failure!\r\n Errors:%s",e.ErrorMessage());
AfxMessageBox(errormessage);
}