Foxtable(狐表)用户栏目专家坐堂 → 这样分次处理也会出现错误?!


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

主题:这样分次处理也会出现错误?!

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


加好友 发短信 F6
等级:狐精 帖子:3036 积分:19223 威望:0 精华:2 注册:2008/9/1 7:50:00
这样分次处理也会出现错误?!  发帖心情 Post By:2018/9/7 11:46:00 [显示全部帖子]

.NET Framework 版本:2.0.50727.8825
Foxtable 版本:2018.8.30.1
错误所在事件:加载[HstDtl]失败!
详细错误信息:
查询超时已过期

有关代码如下:IDDtl表中的数据是HstDtl中ID唯一值的信息,HstDtl中每一个ID的相关记录不会超过100行
For i As Integer = 6272450 To 8974340
    For k As Integer = 1 To 2702       
        Dim m,n As Integer
        m = 6272449 + (k-1) * 1000 + 1
        n = 6272449 + k * 1000
        DataTables("IDDtl").LoadFilter = "[_Identify] >= " & m & " And [_Identify] <= " & n
        DataTables("IDDtl").Load
        For Each dr As Row In Tables("IDDtl").Rows
            Dim id As String = dr("ID")
            output.Show(id)
            DataTables("HstDtl").LoadFilter = "[ID] = '" & id & "'"
            DataTables("HstDtl").Load
            Tables("HstDtl").Sort = "出货日期"
            Dim t As Integer = Tables("HstDtl").Rows.Count
            Dim r As Row = Tables("HstDtl").Rows(n-1)
            r("Lst") = t-1
            DataTables("HstDtl").ReplaceFor("TJ",True)
            DataTables("HstDtl").Save
        Next
    Next
Next
MessageBox.Show("OK")

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


加好友 发短信 F6
等级:狐精 帖子:3036 积分:19223 威望:0 精华:2 注册:2008/9/1 7:50:00
  发帖心情 Post By:2018/9/7 12:57:00 [显示全部帖子]

为什么要这样的?指引到问题的关键
任何有关于SQLCommand、还有DataTable的SQL方法,都会出现同样的错误,因此不得已采用以上的分批分次小量加载。
因为在这之前两三个版本中,我都一次性加载了300万行的数据,都没有问题的啊!
所以,我可能猜想都是不是这个版本有问题?!希望我的设想是错误的!

 回到顶部