这条dsum语句怎么改?不执行,不知错在哪里了?请高手帮看下,谢谢

wenyongjie 2009-10-10 10:19:20
表:
编号 名称 差价 标志
-----------------------------------
◆人工◆ 。。。 分类 // 这里的差价值是从标志='人工'的差价相加 =15
001 ..... 10 人工
002 。。。 5 人工

◆材料◆ 。。。 分类 // 这里的差价值是从标志='材料的差价相加 =3
003 .... 2 材料
004 .... 1 材料

◆机械 ◆ 。。。 分类 // 这里的差价值是从标志='机械的差价相加 =5
005 .... 3 机械
006 .... 2 机械

我的实现语句:在C++中

const int TmpGljTbCount=3;
CString ClBz[TmpGljTbCount]={"人工", "材料","机械"};
int i;
CString sql;



for(i=0;i<TmpGljTbCount;i++)
{

sql="update 工料机汇总 set \
价差=dsum('价差','表名',标志='"+ClBz[i]+"')\
where 标志='分类' and 编号='◆"+ClBz[i]+"◆'"; //不执行,不知错在哪里了?请高手帮看下,谢谢

//.......执行SQL语句 执行后想实现各类差价的汇总,并保存到标志为分类的记录里
}

...全文
62 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wenyongjie 2009-10-10
  • 打赏
  • 举报
回复
谢谢,自己想办法解决了,

逐条更新 太慢

生成一个分组临时表再把临时表拷贝到目标表中就可以了,谢谢
WWWWA 2009-10-10
  • 打赏
  • 举报
回复
DSUM是VBA函数,只能在ACCESS中有效,生成一个分组临时表,再替换工作表
ACMAIN_CHM 2009-10-10
  • 打赏
  • 举报
回复
ACCESS的DSUM仅在ACCCESS的环境中可见,通过ODBC或者其它的ADO/DAO这个函数是无效的。

在ACCESS中你只能通过你的程序来逐条更新了。

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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