Foxtable(狐表)用户栏目专家坐堂 → [求助]update明细金额到主表


  共有230人关注过本帖树形打印复制链接

主题:[求助]update明细金额到主表

帅哥哟,离线,有人找我吗?
chnfo
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2281 积分:18756 威望:0 精华:0 注册:2011/11/26 20:21:00
[求助]update明细金额到主表  发帖心情 Post By:2025/2/16 22:31:00 [只看该作者]

cmd.CommandText = "UPPDATE TbCorrect Set CV = ( Se1ect sum(BackV)   From TbCorrectD   Where TbCorrectD.CorrectID = 'xxx'  ) where  id = 'xxx'"
    cmd.ExecuteNonQuery

提示错误:操作必须使用一个可更新的查询

现在使用access做数据库


[此贴子已经被作者于2025/2/16 22:31:13编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/16 22:46:00 [只看该作者]

UPDATE TbCorrect as a inner join (Select CorrectID,sum(BackV) as  合计  From TbCorrectD where  CorrectID = 'xxx'  group by CorrectID) as b on a.id=b.CorrectID Set a.CV = b.合计 where  id = 'xxx'

 回到顶部
帅哥哟,离线,有人找我吗?
chnfo
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2281 积分:18756 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2025/2/16 22:57:00 [只看该作者]

还是不行哦,提示操作必须使用一个可更新的查询
upPdate TbCorrect as a inner join (Se1ect CorrectID,sum(BackV) as  XV  From TbCorrectD where  CorrectID = 'xxx'  group by CorrectID) as b on a.id = b.CorrectID Set a.CV = b.XV where  a.id = 'xxx'


这个在杂项>执行>SQL执行,运行还是会报错
[此贴子已经被作者于2025/2/16 23:04:17编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/16 23:03:00 [只看该作者]

TbCorrect没有主键,或者是一个查询表

 回到顶部
帅哥哟,离线,有人找我吗?
chnfo
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2281 积分:18756 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2025/2/16 23:07:00 [只看该作者]




图片点击可在新窗口打开查看不会啊,主表有ID的,它是一个数据表,不是查询表
明细表的ID是空值倒是真的,但主表的ID不是空值
图片点击可在新窗口打开查看
是不是跟数据库是access有关?
[此贴子已经被作者于2025/2/16 23:35:12编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/17 8:42:00 [只看该作者]

有ID不等于有主键,检查主键:http://www.foxtable.com/webhelp/topics/1807.htm

 回到顶部
帅哥哟,离线,有人找我吗?
chnfo
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2281 积分:18756 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2025/2/17 10:11:00 [只看该作者]

图片点击可在新窗口打开查看我把TbCorrect的ID列设为了主键,还是执行不了哦
依然报错为
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2025.1.3.1
错误所在事件:
详细错误信息:
操作必须使用一个可更新的查询。

cmd.CommandText = "upPdate TbCorrect as a inner join (Se1ect CorrectID,sum(BackV) as  合计  From TbCorrectD where  CorrectID = '" & mainid & "'  group by CorrectID) as b on a.id = b.CorrectID Set a.CV = b.合计 where  a.id = '" & mainid & "'"

[此贴子已经被作者于2025/2/17 10:14:01编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/17 11:03:00 [只看该作者]

设置主键后保存一下,然后到后台数据库测试一下sql是否可以执行

 回到顶部
帅哥哟,离线,有人找我吗?
chnfo
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2281 积分:18756 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2025/2/17 11:11:00 [只看该作者]

在access中也不可执行,提示错误是一样的

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/17 11:26:00 [只看该作者]

那就是不支持子查询。分开2次执行吧。先获取统计值,再更新

 回到顶部
总数 11 1 2 下一页