Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共11 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

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

1楼
chnfo 发表于: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楼
有点蓝 发表于: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'
3楼
chnfo 发表于: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楼
有点蓝 发表于:2025/2/16 23:03:00
TbCorrect没有主键,或者是一个查询表
5楼
chnfo 发表于:2025/2/16 23:07:00



图片点击可在新窗口打开查看不会啊,主表有ID的,它是一个数据表,不是查询表
明细表的ID是空值倒是真的,但主表的ID不是空值
图片点击可在新窗口打开查看
是不是跟数据库是access有关?
[此贴子已经被作者于2025/2/16 23:35:12编辑过]
6楼
有点蓝 发表于:2025/2/17 8:42:00
有ID不等于有主键,检查主键:http://www.foxtable.com/webhelp/topics/1807.htm
7楼
chnfo 发表于: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楼
有点蓝 发表于:2025/2/17 11:03:00
设置主键后保存一下,然后到后台数据库测试一下sql是否可以执行
9楼
chnfo 发表于:2025/2/17 11:11:00
在access中也不可执行,提示错误是一样的
10楼
有点蓝 发表于:2025/2/17 11:26:00
那就是不支持子查询。分开2次执行吧。先获取统计值,再更新
共11 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .05078 s, 2 queries.