_ConnectionPrt m_pConnection;
_RecordsetPtr m_pRecordset;
BYTE mmm[300];
...//部分初始化代码省略
...//为把mmm[300]的值保存到数据库中
...//这样做对不对?VARIANT varMMM;
SAFEARRAY *pMMM;
SAFEARRAYBOUND MMMbound[1];
MMMbound[0].lLbound=0;
MMMbound[1].cElements=300;
pMMM=SafeArrayCreate(VT_UI1,1,MMMbound);
for(long j=0;j<300;j++)
SafeArrayPutElement (pMMM, &j, MMM);
varMMM.vt = VT_ARRAY | VT_UI1;
varMMM.parray = pMMM;
m_pRecordset->GetFields()->GetItem("mmm")->AppendChunk(varMMM);
m_pRecordset->Update();
//"mmm"为数据库中一个字段数据类型为ole对象
//这段代码有什么问题,请指教
_RecordsetPtr m_pRecordset;
BYTE mmm[300];
...//部分初始化代码省略
...//为把mmm[300]的值保存到数据库中
...//这样做对不对?VARIANT varMMM;
SAFEARRAY *pMMM;
SAFEARRAYBOUND MMMbound[1];
MMMbound[0].lLbound=0;
MMMbound[1].cElements=300;
pMMM=SafeArrayCreate(VT_UI1,1,MMMbound);
for(long j=0;j<300;j++)
SafeArrayPutElement (pMMM, &j, MMM);
varMMM.vt = VT_ARRAY | VT_UI1;
varMMM.parray = pMMM;
m_pRecordset->GetFields()->GetItem("mmm")->AppendChunk(varMMM);
m_pRecordset->Update();
//"mmm"为数据库中一个字段数据类型为ole对象
//这段代码有什么问题,请指教
SafeArrayPutElement (pMMM, &j, MMM);
varMMM.vt = VT_ARRAY | VT_UI1;
varMMM.parray = pMMM;
m_pRecordset->GetFields()->GetItem("mmm")->AppendChunk(varMMM);
m_pRecordset->Update();
应为
for(long j=0;j<300;j++)
{
SafeArrayPutElement (pMMM, &j, MMM);
varMMM.vt = VT_ARRAY | VT_UI1;
varMMM.parray = pMMM;
m_pRecordset->GetFields()->GetItem("mmm")->AppendChunk(varMMM);
m_pRecordset->Update();
}
你把
VARIANT varMMM;
改成
_variant_t varMMM;
就可以了
我要100分
您的代码和我的一样,为什么你能通过,我不能?
请问LoolSail(ff):
您试过没有?(您要是试过,我马上兑现分数,但有一点,你要的分数太高,这样没有别人的份了)
顺便问一下,为什么我把这数据存成一个文件,然后读取文件,同样是用VARIANT varMMM,结果是保存成功?
我只能给你50分,
我的问题,你只回答了一半