Foxtable(狐表)用户栏目专家坐堂 → 同一段代码在不同的项目中为什么运行时间会相差很大?


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

主题:同一段代码在不同的项目中为什么运行时间会相差很大?

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


加好友 发短信
等级:一尾狐 帖子:445 积分:4777 威望:0 精华:0 注册:2010/4/11 14:09:00
同一段代码在不同的项目中为什么运行时间会相差很大?  发帖心情 Post By:2019/10/10 1:33:00 [只看该作者]

Dim Filter As String

Dim Filter2 As String

Dim dr As DataRow = e.Node.DataRow '获取生成此节点的行

If e.Node.Text <> "点击加载数据......" Then

    Dim Year As Integer = e.Node.DataRow("年")

    Dim Month As Integer = e.Node.DataRow("月")

    Dim qy As String = e.Node.DataRow("区域")

    Dim khdm As String = e.Node.DataRow("客户代码")

    Select Case e.Node.Level

        Case 0   '点击年份

        Case 1   '点击月份

        Case 2   '点击区域

            Filter = "区域 = '" & qy & "'"

          DataTables("定单明细").loadFilter = Filter

    DataTables("定单明细").Load()

    Tables("定单明细").Sort = "日期"

    DataTables("定单").loadFilter = Filter

    DataTables("定单").Load()

        Case 3       '点击客户代码

            Filter ="区域 = '" & qy & "' and 客户代码 = '" & khdm & "'"

            Filter2 ="区域 = '" & qy & "'"

         DataTables("定单明细").loadFilter = Filter

            DataTables("定单明细").Load()

         Tables("定单明细").Sort = "日期"

         DataTables("定单").loadFilter = Filter2

         DataTables("定单").Load()

     End Select

End If


数据库是用的SQL,以上这段代码,在目前的项目中,加载运行的时间,大致都是在0.7~0.9秒之间,感觉很慢,我新建一个项目,里面就只有这个代码,运行的时间大致在0.04~0.08之间,相差了一个数量级,感觉就快多了,是什么影响了这个运行时间呢?


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


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2019/10/10 8:26:00 [只看该作者]

如果数据量一样,测试环境相同,可能是表达式造成的

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


加好友 发短信
等级:一尾狐 帖子:445 积分:4777 威望:0 精华:0 注册:2010/4/11 14:09:00
  发帖心情 Post By:2019/10/10 8:50:00 [只看该作者]

所有的环境都是一样的
狐爸
您说的表达式是指定单明细和定单表里面的表达式吗?
这个问题有解吗?

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/10 10:01:00 [只看该作者]


 回到顶部