以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 求助,一个疑难问题! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=92760) |
-- 作者:wandongliang -- 发布时间:2016/11/11 22:57:00 -- 求助,一个疑难问题! 假如有两个表,表A和表B,两表中有两个同名列,为“编号”,“标记”。表A中“编号”列值为唯一,而表B有重复。如何才能更快速,更准确的实现这个目的,当表B中大数量的行中,“标记”列值发生变化时,同时表A中编号与表B对应的行,“标记”列内容也随之更新? 目前我总的是find循环查找,但是效率非常慢,而且出错率很好,有没有更好的方法? |
-- 作者:有点蓝 -- 发布时间:2016/11/12 8:57:00 -- 干嘛要循环,一次Find就可以了,参考:http://www.foxtable.com/webhelp/scr/1453.htm 贴出你的代码看看
|
-- 作者:wandongliang -- 发布时间:2016/11/12 11:56:00 -- If e.DataCol.name = "标记" Then Dim br As DataRow br = DataTables("会员信息表").find("永久编号 = \'" & e.DataRow("永久编号") & "\'") If br IsNot Nothing Then br("标记") = e.NewValue End If End If |
-- 作者:wandongliang -- 发布时间:2016/11/12 11:58:00 -- 这是代码,但是当几十行,几百行数据同时修改的时候,效率非常低,通常需要一分多钟的时间才能完成,而且我发现其中还存在错误的地方 |
-- 作者:有点蓝 -- 发布时间:2016/11/12 12:02:00 -- 可以通过sql更新,具体上例子看看 或者不用事件,保存后用再另外处理 [此贴子已经被作者于2016/11/12 12:03:14编辑过]
|