以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- update更新数据 告知条数和失败数都可以统计出来,但是成功数永远是0,求解! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=148680) |
-- 作者:李孝春 -- 发布时间:2020/4/13 11:25:00 -- update更新数据 告知条数和失败数都可以统计出来,但是成功数永远是0,求解! upd ate更新数据 告知条数和失败数都可以统计出来,但是成功数永远是0,求解! 利用select查询数据 成功数有数据的 Dim vals As List(Of String) vals=DataTables("信息列表").s qlGetValues("信息编号","操作单位=\'" & _usergroup & "\' ") For Each val As String In vals output.Show(val) output.Show("信息编号=\'" & val & "\'" ) Dim cmd As new SQ LCommand cmd.Conn ecti cmd.CommandText = "UPD ATE 信息列表 SE T 告知条数 = ? ,成功数 = ? ,失败数 = ? WHERE 信息编号=\'" & val & "\'" cmd.Parameters.Add("@告知条数",DataTables("告知内容").Co mpute("Count(姓名)","信息编号=\'" & val & "\' ")) cmd.Parameters.Add("@成功数",DataTables("告知内容").Co mpute("Count(是否告知)","信息编号=\'" & val & "\' And 是否告知=\'是\' and 状态码=\'0\'")) cmd.Parameters.Add("@失败数",DataTables("告知内容").Co mpute("Count(是否告知)","信息编号=\'" & val & "\' And 是否告知=\'否\'")) \'cmd.Parameters.Add("@信息编号","信息编号=\'" & val & "\'") cmd.ExecuteNonQuery output.Show(DataTables("告知内容").Co mpute("Count(姓名)","信息编号=\'" & val & "\' ")) output.Show(DataTables("告知内容").Co mpute("Count(是否告知)","信息编号=\'" & val & "\' And 是否告知=\'是\' and 状态码=\'0\'")) output.Show(DataTables("告知内容").Co mpute("Count(是否告知)","信息编号=\'" & val & "\' And 是否告知=\'否\'")) Next 【红色部分怎么采用下面的sel ect语句优化呢? Dim cmd1 As new SQ L Command cmd1.Conn ectio nName = "综合本地数据" cmd1.Com mandText = "se lect co unt (*) fr om {告知内容} where 信息编号=\'" & val & "\' And 是否告知=\'是\' and 状态码=\'0\'" 】 [此贴子已经被作者于2020/4/13 11:33:03编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/4/13 11:47:00 -- 肯定没有符合条件的数据,因为还有一个条件:信息编号=\'" & val & "\',上面第一张图查询是没有这个条件的,加上条件还有没有记录? |
-- 作者:李孝春 -- 发布时间:2020/4/13 15:25:00 -- 回复:(有点蓝)肯定没有符合条件的数据,因为还有一... 信息编号 val 是有值输出的 所以问题就怪了 |
-- 作者:有点蓝 -- 发布时间:2020/4/13 16:21:00 -- 信息编号 val 是有值输出,但是没有符合信息编号 =val 这个条件的统计值啊 |
-- 作者:李孝春 -- 发布时间:2020/4/13 16:47:00 -- 回复:(有点蓝)信息编号 val 是有值输出... 不应该啊 只有成功数没有统计数据 好纠结 其它告知总数 失败数都有统计数据 是不是val这个数据集合没有写对
|
-- 作者:有点蓝 -- 发布时间:2020/4/13 17:03:00 -- 下面sql拿到数据库查询有没有数据? select * from 告知内容 where 信息编号=\'把val的值填进来\' And 是否告知=\'是\' and 状态码=\'0\' |
-- 作者:李孝春 -- 发布时间:2020/4/13 17:20:00 -- 回复:(有点蓝)下面sql拿到数据库查询有没有数据?s... 有数据哦 |
-- 作者:有点蓝 -- 发布时间:2020/4/13 17:33:00 -- 是不是数据没有加载? 试试 DataTables("告知内容").Compute("Count([_Identify])","信息编号=\'" & val & "\' And 是否告知=\'是\' and 状态码=\'0\'") 或者 DataTables("告知内容").SqlCompute("Count([_Identify])","信息编号=\'" & val & "\' And 是否告知=\'是\' and 状态码=\'0\'")
|