起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 200|回复: 9

【结】[问题]数据集过滤

[复制链接]
发表于 2009-8-6 17:02:31 | 显示全部楼层 |阅读模式
主数据集共有数据2000条数据,
从数据集2W条数据。在界面中第一次查询主表数据的时候,如果查询出10条数据,从表中最多只有100条数据。我的从数据集是在主数据集过滤结束后打开?
为什么会很慢。
大概需要30秒左右。
只是打开窗体的第一次查询会很慢。我想知道从数据集根据主数据过滤在数据库中是怎么处理的?感觉好像是从数据集在打开的时候就已经把所有数据取出来放在客户端,再根据主数据集过滤。
回复

使用道具 举报

发表于 2009-8-6 17:26:01 | 显示全部楼层
1、请问你使用的版本号
2、主从关系定义的时候,是需要时取,还是全部取?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-6 17:29:29 | 显示全部楼层
1.版本号 3.0.6.2800
2.需要时取

我用SystemMonitor监视到打开从数据集的时候是 SELECT * FROM 从表 ,后面没有主表的条件
回复 支持 反对

使用道具 举报

发表于 2009-8-6 18:19:47 | 显示全部楼层
哦,原先版本是有这么一个问题,他不是取数据,而是取数据集的结构去了。
方法一、取消主从,自己用代码来过滤数据,
方法二、在信息下取消数据集定义的主从关系,然后open原来的主数据集,然后再代码设置主从,最后打开从数据集
方法二、需要做升级,这样的代价可能有点大,我问一下,看看能否与你现在的版本兼容,有结果跟帖告知
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-7 09:34:39 | 显示全部楼层
我的从表是多表查询出来的视图。我试过,自己写条件用UserFilter过滤,但是那样速度更慢。(比如从1条主表数据过滤出10多条从表数据,大概要停留2到3秒。)
我现在用主从关系的方法只是打开窗体第一次查询的时候速度慢,后面查询就好了。
回复 支持 反对

使用道具 举报

发表于 2009-8-7 10:05:04 | 显示全部楼层
试过方法二吗?速度怎样?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-7 10:06:43 | 显示全部楼层
方法二我不会,能给个例子吗?
回复 支持 反对

使用道具 举报

发表于 2009-8-7 10:19:04 | 显示全部楼层
是代码设置主从不会,对吧。如果是参考 http://bbs.justep.com/forum.php?mod=viewthread&tid=553
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-7 10:26:03 | 显示全部楼层
感谢atiger ! 可以结贴了。  我刚才试了下代码设置主从关系,感觉速度好多了。 真奇怪。
回复 支持 反对

使用道具 举报

发表于 2009-8-7 10:38:08 | 显示全部楼层
不客气,结贴。可以看看发的SQL,
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-18 08:45 , Processed in 0.039763 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表