Foxtable(狐表)用户栏目专家坐堂 → 动态加载表与Fill的比较


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

主题:动态加载表与Fill的比较

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


加好友 发短信
等级:八尾狐 帖子:1930 积分:17570 威望:0 精华:0 注册:2014/7/29 19:09:00
动态加载表与Fill的比较  发帖心情 Post By:2014/10/15 19:23:00 [显示全部帖子]

在项目的外部数据表设置那添加了外部表,但打开项目时没有加载,通过下面的代码需要时再加载表结构进来,

If DataTables.Contains("表C") = False Then '如果表C没有加载
    DataTables.Load("表C")
'加载表C

End If


这种方式和项目的外部数据表设置那不添加任何表,直接在打开窗口时将表结构及数据Fill到窗口的sqltable中,哪种方式效率更高?

谢谢!

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


加好友 发短信
等级:八尾狐 帖子:1930 积分:17570 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2014/10/15 19:44:00 [显示全部帖子]

主要是想问下两者的速度哪个快,还是都差不多?

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


加好友 发短信
等级:八尾狐 帖子:1930 积分:17570 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2014/10/15 20:46:00 [显示全部帖子]

谢谢甜老师,但还是不明白;重新理下思路。
方式1:要用到表时用下面代码加载
If DataTables.Contains("表C") = False Then '如果表C没有加载
    DataTables.Load("表C"
'加载表C

End If
用完后关闭是又用下面的代码卸载;

If DataTables.Contains("表C"Then '如果表C已经加载
    DataTables.Unload("表C")
'卸载表C

End
If

如果再次用到此表时又要重复上述过程


方式二:

而窗口中的SQLtable是在打开窗口时才加载表

Tables(“窗口1").Fill("select *  from {表C} where [_Identify] < 0",data,False)

每次打开窗口1就加载表,关闭窗口1就卸载表了。

如果不考虑数据量,都是SQL外部数据源,仅加载表结构速度 上哪种会更快呢?


 回到顶部