Foxtable(狐表)用户栏目专家坐堂 → [求助]数据检索的问题


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

主题:[求助]数据检索的问题

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


加好友 发短信
等级:幼狐 帖子:174 积分:2349 威望:0 精华:0 注册:2015/8/12 15:36:00
[求助]数据检索的问题  发帖心情 Post By:2015/9/15 11:07:00 [只看该作者]

数据库是外部数据源(Access)
我在表A中

DataColChanged事件中如下代码:


Select Case e.DataCol.Name
    Case "条码编号"
        If e.DataRow.IsNull("条码编号") Then
            e.DataRow("防伪编码") = Nothing
        Else
            Dim dr As DataRow
            dr = DataTables("SeurityCode").Find("[Code] = '" & e.DataRow("条码编号") & "'")
            If dr IsNot Nothing Then
                e.DataRow("防伪编码") = dr("Security")
                dr("启用") = True
            End If
        End If
End Select

我的问题是:如果全部加载"SeurityCode"表数据,有48万条数据,全部加载的话就有些慢了,再每次重置表A的条码编号列获得SeurityCode表的防伪编码,感觉耗时更多.

有没有提高执行速度的代码或方法?

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/9/15 11:45:00 [只看该作者]

SeurityCode设置成默认不加载,然后在上面代码中使用SQLFind

 

http://www.foxtable.com/help/topics/2911.htm


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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2015/9/15 11:48:00 [只看该作者]

1、 动态修改,用上面的代码,大批量修改,直接用SQL语句执行,然后重新加载

2、 一般不需要加载这么多数据,一般用分页加载和动态加载,参考《动态加载》这一章:

http://www.foxtable.com/help/topics/1998.htm

 

 

 


 回到顶部