Foxtable(狐表)用户栏目专家坐堂 → 6月27日更新,请记住这一天,从此众菜鸟也能秒杀资深程序员


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

主题:6月27日更新,请记住这一天,从此众菜鸟也能秒杀资深程序员

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
6月27日更新,请记住这一天,从此众菜鸟也能秒杀资深程序员  发帖心情 Post By:2009/6/27 16:09:00 [只看该作者]

Foxtable提供的功能,让菜鸟也能设计出专业的录入、查询、统计界面,也能轻松地设计出各种报表和单据。
但是之前Foxtable有一个硬伤,使得菜鸟永远无法超越资深程序员。
今天这个硬伤不复存在。

 

直接统计后台数据


如果数据量非常大,例如上百万甚至千万级别的记录,那么全部加载到内存是不可能的,所以Foxtable提供了动态加载数据的功能,使得在程序的运行过程中,也能随时根据需要加载符合条件的数据,这让Foxtable管理超大型数据库成为可能。


但是这有一个问题,动态加载部分数据是没问题的,但是很多时候,我们的统计是针对所有数据的,而Foxtable的分组统计和交叉统计默认都是针对已经加载的数据的,如果我要统计所有数据,难道需要将一百万甚至一千万记录全部加载到Foxtable?显然这是不可能的。


对于熟练掌握SQL语言的用户来说,这不是问题,直接自己编写SQL语句来统计即可;但实际上,SQL语言虽然入门容易,但是精通是很难的,对于一些复杂的统计,即使是一些非常资深的程序员,也不见得能够在短时间内写出合理高效的SQL语句来,何况是普通用户呢?

到目前为止,我接触的人中,也只有reachtone可以纯火炉青地运用SQL语言,写出一些让人瞠目结舌的统计语句来。


为此GroupTableBuilder和CrossTableBuilder都提供了一个名为FromServer的逻辑属性,只需将此属性设为True,即可直接统计后台数据。


例如:


Dim
g As New GroupTableBuilder("统计表1", DataTables("订单"))
g.Groups.AddDef(
"产品")
g.Totals.AddDef(
"数量")
g.FromServer =
True
g.Build()

MainTable
= Tables("统计表1"
)


上述代码能否自动生成最高效的SQL语句,来对后台数据进行统计。
对于一些复杂的统计,GroupTableBuilder和CrossTableBuilder生成的SQL语句,会比最资深的程序员写出来的SQL语句还要高效。

如果通过菜单统计,且需要直接统计后台数据,可以选中下图所示的选项:


此主题相关图片如下:1080.gif
按此在新窗口浏览图片

你还可以利用这个界面自动生成代码,不过是单击几次鼠标而已。
[此贴子已经被作者于2009-6-27 19:46:41编辑过]

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


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/6/27 16:10:00 [只看该作者]

哈,祝贺并记住这一天吧!

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


加好友 发短信 F6
等级:狐精 帖子:3036 积分:19223 威望:0 精华:2 注册:2008/9/1 7:50:00
  发帖心情 Post By:2009/6/27 16:18:00 [只看该作者]

秒杀的感觉!分享去吧!
俺记住这一天!

[此贴子已经被作者于2009-6-27 16:19:11编辑过]

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


加好友 发短信
等级:幼狐 帖子:191 积分:1442 威望:0 精华:2 注册:2008/9/7 21:30:00
  发帖心情 Post By:2009/6/27 16:33:00 [只看该作者]

这个好,“秒杀”这个词还是少提为好。不要翘尾巴,继续努力图片点击可在新窗口打开查看
[此贴子已经被作者于2009-6-27 16:35:37编辑过]

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


加好友 发短信 F6
等级:狐精 帖子:3036 积分:19223 威望:0 精华:2 注册:2008/9/1 7:50:00
  发帖心情 Post By:2009/6/27 16:33:00 [只看该作者]

如果加入庞大的多维表,那就将追杀比尔盖茨,呵呵

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


加好友 发短信
等级:五尾狐 帖子:1181 积分:8108 威望:0 精华:1 注册:2009/1/17 10:52:00
  发帖心情 Post By:2009/6/27 16:39:00 [只看该作者]

秒杀???
是玩神奇吗?


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


加好友 发短信 三级勋章
等级:童狐 帖子:273 积分:2072 威望:0 精华:0 注册:2008/9/5 23:31:00
  发帖心情 Post By:2009/6/27 16:57:00 [只看该作者]

今天是我的生日,而且还是本命年的生日。

从早上起来之后就一直盼着新版本的出现,刚才午睡了一会儿,起来再看,果然就有了。哈哈!


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/27 17:12:00 [只看该作者]

以下是引用bjljb在2009-6-27 16:57:00的发言:

今天是我的生日,而且还是本命年的生日。

从早上起来之后就一直盼着新版本的出现,刚才午睡了一会儿,起来再看,果然就有了。哈哈!


呵呵,还好没有让你失望。

下午老婆拉我去看终结者IV,我抵制住了诱惑,坚持要搞定这个后台数据统计才离开办公室的。

图片点击可在新窗口打开查看


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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2009/6/27 18:08:00 [只看该作者]

以下是引用狐狸爸爸在2009-6-27 16:09:00的发言:
但是之前Foxtable有一个硬伤,今天这个硬伤不复存在。

呵呵,老六终于承认之前的foxtable有硬伤了。
确实应该记住这一天,并向老六致敬。从开始时仅增加比例计算,到后来对统计效率的不断提升,让我对老六的敬业精神深感钦佩。这不是马屁,是肺腑之言图片点击可在新窗口打开查看

顺便跟老六说个题外话,我觉得你都可以把这个统计功能做成专门的DLL进行单独销售了。。。


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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2009/6/27 18:40:00 [只看该作者]

直接对后台统计,效率堪称神速。
这里有个问题,直接对后台统计默认是对全部数据进行统计,无法设置统计条件。
建议将分组、交叉统计中的条件也可以用到后台统计中。刚才设置了一下条件,对载入数据统计没问题;但对后台统计就出错。

 回到顶部
总数 23 1 2 3 下一页