Foxtable(狐表)用户栏目专家坐堂 → 后台更新同一个查询条件的多个字段,能优化吗?


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

主题:后台更新同一个查询条件的多个字段,能优化吗?

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


加好友 发短信
等级:四尾狐 帖子:896 积分:7535 威望:0 精华:0 注册:2017/12/27 14:19:00
后台更新同一个查询条件的多个字段,能优化吗?  发帖心情 Post By:2023/11/17 16:41:00 [只看该作者]

下面的代码,更新数据几百号就要几分钟。
DataTables("租赁项目结转明细表").SQLReplaceFor("实际结转日期", dr("实际结转日期"), "条件1")
DataTables("租赁项目结转明细表").SQLReplaceFor("实际结转日期1", dr("实际结转日期1"), "条件1")
DataTables("租赁项目结转明细表").SQLReplaceFor("结转提交人", "张婷婷", "条件1")
DataTables("租赁项目结转明细表").SQLReplaceFor("结转提交日期", Date.Today, "条件1")
DataTables("租赁项目结转明细表").SQLReplaceFor("应结转而未结转的年份", "", "条件1")

 回到顶部
帅哥,在线噢!
linyunu
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:250 积分:1864 威望:0 精华:2 注册:2018/1/16 20:53:00
  发帖心情 Post By:2023/11/17 16:54:00 [只看该作者]

改用SQLCommand

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


加好友 发短信
等级:超级版主 帖子:110798 积分:563928 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/17 17:05:00 [只看该作者]

SQLReplaceFor只能一个个来,使用sql吧:http://www.foxtable.com/webhelp/topics/3266.htm

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


加好友 发短信
等级:四尾狐 帖子:896 积分:7535 威望:0 精华:0 注册:2017/12/27 14:19:00
  发帖心情 Post By:2023/11/17 17:06:00 [只看该作者]

改成下面这样子,800条数,跟sqlselect相比执行时间好像差不太多啊
cmd.CommandText = "U PDA TE {租赁项目结转明细表} SET 实际结转日期 = '" & dr("实际结转日期") & "', 实际结转日期1= '" & dr("实际结转日期1") & "',结转提交人=  '张婷婷', 结转提交日期=  '" & Date.Today & "',应结转而未结转的年份 =''  WHERE  条件1 ' 

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


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

肯定快得多的。

另外建议使用参数化的用法。检查使用的条件列可以加上索引

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


加好友 发短信
等级:四尾狐 帖子:896 积分:7535 威望:0 精华:0 注册:2017/12/27 14:19:00
  发帖心情 Post By:2023/11/17 17:27:00 [只看该作者]

加上索引 什么意思啊,是指的Identify吗  加上会效率提高吗
[此贴子已经被作者于2023/11/17 17:27:35编辑过]

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


加好友 发短信
等级:超级版主 帖子:110798 积分:563928 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/17 17:34:00 [只看该作者]

https://www.baidu.com/baidu?ie=UTF-8&word=%E4%BB%80%E4%B9%88%E6%98%AF%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B4%A2%E5%BC%95


http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=158943

如果使用的外部表,设置索引可以有效提高sql查询的速度。内部表就不用管这个了

 回到顶部