VC操作ACCESS,从表中选择几列数据,并对其中几列进行修改运行时PutCollect出错,PutCollect该如何使用?

yljleslie 2006-08-24 02:06:40
我的问题是这样的,我的表中有UK1,UK2,UK3,IK1,IK2,IK3,PK,UK,IK,LOGUK,LOGIK,PKS,PKCU1,PKPKS,TK这样几列UK,IK,LOGUK,LOGIK,PKS,PKCU1,PKPKS,TK要根据前面的几列产生,比如:UK=(UK1+UK2+UK3)/3;LOGUK=LOG(UK);PKS=PK*R;

我现在是这样做的,可是运行的时候m_pRecod->PutCollect(_variant_t(long(i+7)),_variant_t(LPCTST(str)));这句话有错,不知道该怎么改.

我搜索了一下,有的说是EXCUTE打开的记录集是只渎的,不能进行修改,要用OPEN语句打开,所以我试着换成
m_pRecordset->Open((_bstr_t)str,_variant_t((IDispatch*)(theApp.m_pConnection),true),adOpenStatic,adLockOptimistic,adCmdText);
但是这个OPEN语句又执行不了了,但用EXECUTE时是可以执行SQL语句的!
各位大虾帮我看看,我初接触数据库,SQL,实在是不知道哪里错了 ,该怎么改,谢谢各位拉!!!

程序如下:
try
{
str.Format("SELECT UK1,UK2,UK3,IK1,IK2,IK3,PK,UK,IK,LOGUK,LOGIK,PKS,PKCU1,PKPKS,TK FROM 堵转特性 WHERE 电机编号=%d",1);
m_pRecod = theApp.m_pConnection->Execute((_bstr_t)str,NULL,adCmdText);
while (!m_pRecod->ADOEOF)
{
for (i=0;i<7;i++)
{
valueall = m_pRecod->GetCollect(_variant_t((long)i));
strk[i] = (TCHAR*)(_bstr_t)valueall;
valk[i] = atof(strk[i]);
}
valcal[0] = (valk[0]+valk[1]+valk[2])/3;//u0
valcal[1] = (valk[3]+valk[4]+valk[5])/3;//i0
valcal[2]= log(valcal[0]);//logu0
valcal[3] = log(valcal[1]);//logio
valcal[4] = valp0*valk[7];//Pks
valcal[5] = 1.5*valcal[1]*valcal[1]*valRk1;//Pkcu1
valcal[6] = valk[7]-valcal[5]-valcal[4];//Pk-Pkcu1-Pks
valcal[7] = 9.55*valcal[6]*1000*valmotorp/3000;//Tk
for (i=0;i<8;i++)
{
str.Format("%.4f",valcal[i]);
m_pRecod->PutCollect(_variant_t(long(i+7)),_variant_t(LPCTST(str)));
}
m_pRecod->MoveNext();
}
m_pRecod->Update();
}
catch (CException* e)
{
MessageBox("程序执行出错","错误",MB_OK);
}
...全文
228 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
staryxg 2007-02-09
  • 打赏
  • 举报
回复
我遇到过PutCollect不出错, 完成后执行MoveFrist()出错
yljleslie 2006-08-24
  • 打赏
  • 举报
回复
没有人了吗???好急啊,这个问题难了我好几天了
yljleslie 2006-08-24
  • 打赏
  • 举报
回复
handsomerun(毛毛):可是这个update的更新语句应该怎么办写呢?
比如选择
UK1,UK2,UK3,PK,UK,LOGUK,PKS这样几列UK,LOGUK,PKS,要根据前面的几列产生,比如:UK=(UK1+UK2+UK3)/3;LOGUK=LOG(UK);PKS=PK*R;
这个该怎么写呢?
handsomerun 2006-08-24
  • 打赏
  • 举报
回复
直接用update更新算了
效率高一点

4,011

社区成员

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

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