Foxtable(狐表)用户栏目专家坐堂 → 保存太慢


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

主题:保存太慢

美女呀,离线,留言给我吧!
nuoyan89
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:473 积分:3270 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2024/7/4 16:19:00 [只看该作者]

sqlBulkCopy这个有实例吗?

 回到顶部
帅哥,在线噢!
有点蓝
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:108532 积分:552143 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/4 16:27:00 [只看该作者]

上面论坛链接里就有可用的代码

 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:473 积分:3270 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2024/7/4 16:40:00 [只看该作者]

我是这样写的
Dim cmd1 As New SQL Command
cmd1.Con necti
For Each dr7 As Row In Tables("生产报工明细_生产报工查询表").Rows
    cmd1.CommandText = "UP DATE {过程异常明细} SET 单据状态 = '" & dr7("单据状态") & "',判定结果 = '" & dr7("判定结果") & "',返修操作 = '" & dr7("返修操作") & "',级别类型 = '" & dr7("级别类型") & "',责任人 = '" & dr7("责任人员") & "',处理方案 = '" & dr7("处理方案") & "' where 毛坯编码 = '" & dr7("毛坯编码") & "' And 加工工序 = '" & dr7("加工工序") & "' And 月份 = '" & dr7("月份") & "'"
Next
cmd1.Ex ecuteNonQuery()
[此贴子已经被作者于2024/7/4 16:41:00编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:108532 积分:552143 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/4 16:49:00 [只看该作者]

啊,使用这种方法更新11万行数据!还不如1楼的DataTables("产品").Save()快。

如果是access数据库,只能DataTables("产品").Save(),没有什么好办法。

如果是SqlServer,先使用sqlBulkCopy把所有数据保存到数据库的一个同结构的空表,然后一条直接跨表update即可

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


加好友 发短信
等级:三尾狐 帖子:775 积分:7874 威望:0 精华:0 注册:2014/4/21 15:16:00
  发帖心情 Post By:2024/7/4 16:59:00 [只看该作者]

 如果mssql,则建议直接在后台写一个存储过程,直接在数据库中更新

 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:473 积分:3270 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2024/7/4 17:21:00 [只看该作者]

我的是SQLserver,这个需要在SQL数据库中新建一个表一直保存着吗?

 回到顶部
帅哥,在线噢!
有点蓝
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:108532 积分:552143 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/4 17:23:00 [只看该作者]

更新业务表数据后,清空这个表即可

 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:473 积分:3270 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2024/7/4 22:07:00 [只看该作者]

老师,以下这个后台更新的,提示异常 ,代码如下
        Dim cmd1 As New SQL Command
        cmd1.Connec ti 
        cmd1.Comm andText = "UP DATE  a1 Set a1.直接材料_配件成本  = b1.直接材料_配件成本 ,   From 保存临时表 as b1 ,工序跟踪表 as a1 Where a1.月份= b1.月份 and a1.毛坯编码 = b1.毛坯编码 and a1.加工工序  = b1.加工工序 and a1.生产批次  = b1.生产批次"
        cmd1.ExecuteNonQuery() 

[此贴子已经被作者于2024/7/4 22:14:15编辑过]

 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:473 积分:3270 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2024/7/4 22:15:00 [只看该作者]

找到原因了,谢谢

 回到顶部
总数 19 上一页 1 2