说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

筛选数据-Delphi资料

HTML文档下载 WORD文档下载 PDF文档下载
筛选数据-Delphi资料

·设定范围·

所谓范围,就是指定一个上下界,筛选出落在上下界内的一组连续记录。为方便说明,我们先生成一个

项目,并在Form1中放入如下组件:

组件名 属性

Table1 DatabaseName:=DBDEMOS

TableName:=Customer.db

DataSource1 DataSet:=Table1

DBGrid1 DataSource:=DataSource1

本例中我们使用了Delphi自带的别名'DBDEMOS'下的一个数据库:Customer.db,这是一个记录顾客基

本信息的数据库。当我们把Table1的Active属性置为True时,在DBGrid1中会显示出该库的内容。下面我们

往Form1中放入一个Button1,编写Button1的OnClick事件如下:

procedure TForm1.Button1Click(Sender: TObject);

begin

with Table1 do

begin

KeyExclusive:=True;// 为True时不包括边界值,为False时包括边界值,缺省为False;

SetRangeStart;

Fieldbyname('CustNo').AsString:='1000'; //设定范围上界

SetRangeEnd;

FieldbyName('CustNo').AsString:='2000'; //设定范围下界

ApplyRange; //使范围生效

end;

end;

以上是设定范围的很典型的一组语句。运行程序,单击按钮后,顾客号在1000至2000之间的顾客记录被

筛选了出来。范围一旦被设定,在整个应用程序执行过程中都是有效的。当然,我们可以调用CancelRange

方法来暂时使范围失效,以后需要范围生效时,可直接调用ApplyRange方法,而不需要再次设定范围的上下

界。另外,我们可以调用EditRangeStart和EditRangeEnd的方法来改变范围的上下界。

使用范围的唯一条件是,设定范围的字段必须已建索引。对没有建立索引的字段使用范围是不允许的。

·使用过滤器·

过滤器筛选出来的记录可以是连续的,也可以是非连续的。过滤器不受索引的限制,而且即使有索引,

过滤器也不依赖,也就是说,过滤出来的记录是未经排序的。过滤器的使用非常简单,可以直接在Table组

件的Filter属性中写入包含过滤条件的字符串,并把Filtered属性置为True来启动过滤器。在上例中,我

们可以在Table1的Filter的属性框内写入:(CustNo>1000) and (CustNo<2000)

当我们把Table1的

Filtered属性置为True时,DBGrid1内将显示出顾客号在1000至2000之间的顾客记录。当过滤条件比较复

杂时,我们可以通过编写Table1的OnFilterRecord事件来实现。例如:

procedure TForm1.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);

begin

Accept:=(DataSet[′CustNo′]>1000) and (DataSet[′CustNo′]<2000) and (DataSet[′

Country′]=′US′);

end;

运行程序,所有CustNo在1000至2000之间并且Country='US'的顾客记录被筛选了出来。在

OnFilterRecord事件中,我们可以使用条件分支语句或者循环语句,因而非常灵活,便于完成条件很复杂

的记录筛选工作。和范围一样,过滤器一旦设定,就将维持到应用程序的结束。当然,我们可以将Filtered

属性置为False来使过滤器失效。

和范围相比,过滤器方便灵活,而且不受索引限制,但正是因为没有索引支持,当记录数量比较大时,

过滤器的速度会受影响。因此

范围和过滤器各有各的适用场合。

·使用查询·

即通过TQuery组件来使用SQL语句实现记录的筛选。大家可能对这种方法比较熟悉,这里只做简单说明

,如上例中的记录筛选用一条很简单的SQL语句就能实现:

Select * from Customer

Where (CustNo>1000) and (CustNo<2000)

使用SQL语言可以实现条件很复杂的筛选,当记录数量很大或条件很复杂时,应尽量使用SQL语言来查询

和前两种方法相比,使用查询更加灵活多变,适应性更强,而且也不受索引的限制。但这种通过SQL语

句的筛选是一次性的。当调用TQuery的Open方法(或Active:=true)后,TQuery返回查询结果集,之后就

失去了对结果集的范围限制。当结果集中的某些记录发生改变(如某条记录的Custom变为3000),不满足筛

选条件时,这种方法不能马上察觉,必须再次调用TQuery的Open方法才能实现。

自由操作系统 Debian 正式发布7.0版本 4月份浏览器份额:IE 8仍居第一,IE 10翻番 亚马逊正式在华推Android应用商店 收入3:7分账 不要男孩,只允许女生参加的四所编程学校 下一波App机会在哪里? JS1K 2013优胜作品公布 3D蜜蜂仅获亚军 专访:前新浪网架构师徐佳转行卖水果背后的故事 FBI密码挑战,你能解开吗? 从0到1只需一天:Twitter后PC时代物联网“敏捷”开发之路的探索 机械生物已经面世 只少个“大脑”而已 百度正式宣布3.7亿美元收购PPS视频业务 比尔&#183;盖茨:iPad让人失望 用户需要Surface Dropbox将于今年夏天举办有史以来的第一场开发者大会 Clustrix Sierra分布式数据库系统:云计算时代的MySQL 英特尔出杀手锏 发布低功耗、高性能Silvermont微架构 10大最实用的Raspberry Pi扩展设备推荐 主流浏览器性能测试,IE10百分百完胜! TortoiseSVN的基本操作 再见,Fireworks! 投资者告诉诺基亚CEO:他们快没耐心了 直接拿来用!最火的Android开源项目(二) 营收奇迹:三消游戏Candy Crush Saga成功启示录 马化腾对话李连杰:移动互联网的能量有多大? UC与趋势科技携手,移动浏览器加固安全 乐视发布超级电视X60 售价6999元 巨头们抢滩或已结束?EMC掀起首场SDN登录战 CloudStack创始人梁胜:让中国软件走向世界 ArduinoDroid:让你在Android设备上开发Arduino 码农们的机器人:LEGO MindStorms EV3 详解 JavaScript 中的 this 对话PaaS平台dotCloud布道师:“轻量级”与“重量级”虚拟化 com+的调用方式 哪位大侠知道今年计算机等级考试二级C语言还是用Turbo C2。0吗?还是在Dos环境下吗?(100相赠) 关于多媒体定时器的问题,各位进来看看 session出的问题,高手请进来!! 请问,大连雅奇培训如何?请指点。。。。。。 怎样用header()做下载文件? 关于检测组合键的程序怎样写? 菜鸟问题!!!页面显示后台数据 请问软件包LEDA -- library of the data types and algorithms 哪里有下载的? 如何获得当前页面中的所有Textbox控件集合? 如何对两个表操作???谢谢! java的程序在写Dreamweaver 4里写完不可以直接用,是不是 打印的问题 DELPHI5的资源编辑器用起来很不爽,有没有好点的? 帮帮忙~~~~ 请问软件包LEDA 哪里有下载的?谢谢 ado连接远程数据库是以文件共享方式,还是c/s方式啊? 有没有工作的JAVA程序员吗? 简单的语法问题 vb还是不太会用 求教 最菜的问题 如何保存无法保存的网页? 只要每人献出一点爱,人人都能成为程序员 呵呵,又有问题了 苦恼,大家帮忙啊 关于声音处理的一个问题 求英文资料,急!!! 帮忙解释一下程序,谢谢:) 怎样实现这样的存储过程?高手快来! 用过websnap的进来看一下,巨简单! 调试版本与发布版本的区别? 急等答案, sql的基本表是用一个存储文件表示还是用若干个存储文件表示 我的Windows 2000有时无法关机(重起) ********通过编号找名称!*******求最快的方法!!! 格式化硬盘后安装WIN98过程中为什么出现蓝屏,继续安装下去连软件都安装不了? 请教一个让人郁闷的问题! 寻找一本人民邮电出版社出版的有关 GSM 网络优化的书 请问高手:能不能动态creatLayer? select * ????? 问候大家 晚上好 ,有个问题请教,立即给50分! 怎样使模式对话框最大化显示? 关于socket 十万火急,大哥大姐快救小弟一命!!!考高程的或考过的请帮忙,感激!!! 求救 跟帖 在SERVLET中,页面怎么跳转呢?客户端可以下载指定的ftp文件。。? 一个数据库连接问题??? 挂了双硬盘后,我的光驱不见了,请问怎么办?急!!!!!!!!!!!!!!!! 在SERVLET中,页面怎么跳转呢?客户端可以下载指定的ftp文件。。? 急急急急急! 寻求JB8+Weblogic7的配置! ftp 问题 CFormView有什么优势啊? 稀土怎么样才能开采? e t s a 可以组成什么单词 问一道数问题已知代数式x方(a* x的五次方 + b* x的三次方+ cx)/x的四次方+d* x的平方当x=1时,值为1,当x=-1时直是?是-1伐 稀土怎么开采 黑洞一个小时=地球多少年? 高中政治生活是必修几? 一个蚂蚁从5楼掉下1楼来为什么没有摔死?这是我很长时间搞不懂的问题啊.求救`` 稀土怎样开采 w t s e e 能组成什么单词 The ice started ( ) (melt) 稀土在开采过程中产生的负面影响是什么 黑洞存在了多少年?黑洞是随宇宙诞生一起诞生的吗? 蚂蚁为什么从高楼上跳下来不会摔死? 打对号题 a e t s组成什么单词 两股线绣的十字绣,半针应该用几股线… 打对号那题 e、t、a、t、s组成单词 十字绣中格的半针绣用几股线? 打对号的题,在线等 世界上有没有无血动物 "Melt down" What's Meaning? 打对号那道题4 将一个质量为M,边长为A的正方形均匀木箱放在粗糙水平面上将一个质量为m,边长为a的正方形均匀木箱放在粗糙水平面上,今用力推木箱使其绕一棱翻倒,求推力至少做多少功 答案是(根号2-1)m 十字绣怎么勾边?一般用几股线? 三个打对号的题, 如图所示质量为m的木箱放在水平面上木箱中的立杆上套着一个质量为m的小球,开始时小球在杆的顶端,由静止释放后,小球沿杆下滑的加速度为重力加速度的二分之一倍,即a等于二分之一g,则小 1、如下图所示,质量为m的重锤从高h处自由下落,打在质量为M的木桩上,重锤与木桩一起下沉距离s.求木桩在下沉过程中遇到的平均阻力.(M+m)g+m^2gh/(M+m)s为啥? 在绣十字绣过程中, 质量为M=50kg的木箱放在水平面上,木箱中的立杆上套着一个质量为m=5kg的小球.开始时小球在杆的底端,以16m/s速度向上滑行,滑行的最大高度为8m,则小球在下滑过程中,木箱对地面的压力为多少?希 英语翻译 有一种球从1.8米的高度自由落下后,第一次反弹的高度是1.5米,第二次反弹高度为0.9米,据此推理第三次弹起高度为()米 哲学有什么分类? 像蚂蚁一样不会摔死的动物急………………………………!摔不坏的东西也可以 比赛用的篮球,从1.8米的高度自由落下后,第一次反弹高度应( )1.2米,( )1.4米. 运用政治生活说明如何理解当前国际形势的特点 下载是什么意思 对的打对号,错的打错号并说明原因 五颜六色是什么动物 蝎子毒还是蜈蚣毒? 判断的第四第五题打对号还是错号 掏鸟窝 我要四级燕子蛋,送我 要什么鸟蛋交换随挑要四级燕子蛋,加我好友,或留下开心名我加你开心名:罗文菁有5级燕子蛋,4级喜鹊蛋,4级布谷蛋,4级百灵蛋,4级珍珠鸟蛋,4级乌鸦蛋,4级白鸽蛋, down的意思 判断正误 对的打对号 错的打错号 掏鸟窝中怎么加入鸟友会 Bend down是什么意思快 请问:什么是二维码,具体怎么使用. 掏鸟窝中 什么是处在保护期的鸟蛋?为什么不能掏走? 顺便问一下,活S菌加活R菌, 怎么使用二维码?二维码是干什么用的? 关于问问分类我很气愤!分类是为了让想得到答案的人能更便于得到答案,而有些人不管什么分类,就选了,有兴趣的朋友可以去诗词歌赋里看看,没有几个是真正讨论诗词歌赋的!请问你们是怎么 关于用红细胞计数法测定活细菌数量的题目有人采用下列方法进行酵母菌的计数:将500个红细胞与5毫升该培养液混匀,然后制片观察,进行随机统计结果如下: 视野1 视野2 视野3 视野 什么是二维码?二维码有哪些新奇应用 那为朋友能帮我买到是高等教育出版社或者是上海外语教育出版社急用! 一个篮球从高出自由落下,每次接触地面后弹起的高度2/5.如果这个篮球从25米的高处落下.问:那么第三次弹起的高度是多少? 17岁,一米58正不正常? 大学英语教学大纲通用词汇表 哪里有旧书卖? 球球从高处自由落下球从高处自由落下,触地面又弹起,每次弹起的高度都是下落高度的2/5,如果球从35米处落下,那第三次弹起的高度是多少 s e t w e 都能组成什么单词 急 问一道植物分类题下类植物依次按藻类植物,苔藓植物,蕨类植物,裸子植物,被子植物排列的是( )A 海带,葫芦藓,蕨,银杉,珙桐B 水绵,地钱,胎生狗脊,玉兰,水杉, 英国铜像常被挂内裤乳罩 政府被迫将其英国铜像常被挂内裤乳罩 政府被迫将其通讯:历史遗迹记录昔日辉煌――泰国旧亲善合作 睦邻友好——国内外人士积极马来西亚举办“小状元汉语经典诵读大赛巴基斯坦塔利班头目死于美无人机空袭 英国一医院医疗过失误诊流产 恐致死逾第五届中国木质玩具文化节在浙江云和开为阻法院强制执行 浙江金华一老人扬言浙江金华一智障儿命悬半空 特勤消防空宁波银行发力托管业务 首只公募基金开浙江云和经贸合作洽谈签约引资50多亿把美式“监听帝国”关入“笼子”杭城周末马拉松大派对 关键词:超越、美国无人机再次出手清除巴塔首领 和谈巴基斯坦塔利班头目死于美无人机空袭 中朝俄荣膺第14届中国吴桥国际杂技艺古巴宣布取缔私营电影放映厅报告称中国超越日本 成韩国材料零部件中国珠算备选“非遗”报告称中国超越日本成韩国材料零部件最备考答疑:初会考试如何处理待处理财产山西最坑爹的富二代 败光百亿家产 “费玉清唱起“屯里的人”如何用500元钱拍出一张汽车大片?必尾盘透露一完美信号,明日或将剑指32世界足坛大咖引爆足球盛会 6月将在上2016春季沃克斯电梯以良好业绩傲居揭秘胃病癌变的四个征兆赞宇科技002637主力暗中行动,后侦破法教学化妆,跨界培训讲师夏亭亭夏天喝普洱熟茶,真的是在“火上浇油”VR家装领导者美屋365 改变传统家亨氏米粉面条推出超金系列 打造婴儿辅应该何时介入高位调仓类个股菜百会员黄铂金以旧换新工费优惠活动大2015年“天价救援拖车费”全数免缴丙申年成吉思汗查干苏鲁克大典将于4月牙冠的种类有哪些月经不调对怀孕有影响吗 该如何检查房子没了 房贷要还吗?原油大幅增产偏偏遭遇“油轮荒”,伊朗
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘