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

在Delphi中简单实现多重查询

HTML文档下载 WORD文档下载 PDF文档下载
在Delphi中简单实现多重查询

在数据库管理系统中,查询是一项必不可少的功能。查询功能是直接体现系统功能的一项重要指标。查询的方式主要有以下几种:1固定字段的单一查询;2可选择字段的单一查询;3限制若干个字段的多重查询;4可任意选择字段的多重查询。前两种也称为单条件查询,后两种称为多重(或多条件)查询。在实际中,系统(实为程序员)提供给用户的查询方式以单条件查询为多,即使提供了多条件方式,通常也只有两或三个条件,因为编写多重查询是一项非常棘手且繁琐的事情。仅为此,程序员吃尽了苦头。实际上,利用表格Grid功能,就能轻松地实现多重查询。本人以Delphi为例,介绍具体的实现方法,但这种思想,也同样适合于其它的编程语言(如Visual Foxpro)。

另外,为使程序方便“移植”, 本人把各功能模块化,使其更具有通用性。

程序主要按如下三个功能来实现:

①设置DBGrid

②生成查询条件(语句)

③执行查询

具体步骤如下:

⑴新建一工程文件,取名为PDBGrid.dpr;

⑵给单元文件取名为UDBGrid.pas,在其相应的表单(取名为frmDBGrid)中添加如下控件并编写相应的代码:因程序代码较长,请直接按此下载。

值得说明的是,⑴为从一定程序上简化程序,逻辑关系只提供了AND和OR两种,但为允许用户修改SQL语句,如:在多条件之间增加括号来改变运算顺序等,使得查询功能更加强大,因此增加了Memo控件;⑵在实际系统中,为方便用户的操作,可增加几个Button(按钮),功能分别是对Table2的“增加”、“删除”,这样用户界面会更友好些。

利用这种方法来设置查询,条件个数是无限制的,且在屏幕上不会占据太大的空间,程序员实现起来要简单得多了。

软件环境:中文Win98/中文Delphi5.0。

《近匠》第11期:Arrownock——移动社交构建师 面向企业:Google发布iOS版Google Admin应用 Github推出Education平台 师生免费享有微账号 平板的市场依然巨大:应用更丰富,Phablet设备存局限 免费的PCB数据3D转换工具 OBD++ XVL Converter Hadoop Namenode以regular方式启动代码流程分析 走进支撑过8亿用户的Yahoo!数据中心 Napier,一个引领Rackspace14年老兵功成身退 Twitter最新测试版被指仿Facebook的界面设计 成功求职者的自述:如何向应聘企业展示自身价值? 仅用移动开发服务:一分钱不花,开发native应用 苹果员工爆辞职内幕 Windows Phone 8.1被曝光信息汇总 Phaser:开源的HTML5 2D游戏开发框架 HTML5调查:做的好,收入不比iOS差 汽车巨人福特让“数据”说话 基调数据解读2014网购行业的3大变化 测测:用百度Clouda占卜移动互联网 微软的无奈:或允许Android应用运行于Windows平台 如何选择适合自己的编程语言 Google Now新增语音命令:生活简单一点,让爱更近一点 千万美金收购案:GetJar是一家怎样的公司 传苹果与时代华纳等公司合作,推新一代Apple TV 追本溯源 解析“大数据生态环境”发展现状 为Hadoop存储层增加对OpenStack Swift的支持 详解并行逻辑回归 在AWS上使用GPU实现分布式神经网络 大数据时代,看“小数据”如何支持决策 22人15天研发 微信红包系统发起“珍珠港偷袭”的背后 开发产品防脱节,DevOps来帮忙 手游福音:官方中文版Unity用户手册免费发布 如何实现“让用户自定义快捷键?” 怎么样把.aspx制作成安装的文件?? 我写了如下一个方法,但是用起来有问题,帮我看看!! 俺倒~~~~~~~~`怎么能上三星啊? 向高手求救:如何得到一张表的行数和列数!! 散分!代码解读! 使用sybase时的提示The query and the views in it exceed the limit of 16 tables. 有办法解决吗? 如何将数组的内容添加到一个文件的末尾 怎样才能打开一个489K的.DAT文件? 列表框(ClistCtrl)如何得到选中项的文本内容和选中项的索引值 为什么我登录到Oracle Management Server时老出错。(oracle 9i) 这样的sql语句怎么写呢?急啊!(还可以加分) pb中截取字符串的问题:急,在线等待 急,在VC++.Net中怎样将字符串System::String类型转换为LPSTR类型? 用PQ把NTFS转换成FAT32时,文件名全变名问号了,怎么办?!!!!!!!!!! 又是回车符的问题,急!!!!! 关于工具栏的问题 控件的DragMode为dmAutomatic,不能用鼠标点? 奇怪的电脑时钟 系统不支持本地交互式登陆 ListView的小问题 有责任感的中国人(水均益:我来谈京沪高速铁路 ),顶者有分!200分 如何给MDI窗口设置背景图? 如何使数据按我定义的顺序显示出来 请教,我有一个toolbar,上面有四个toolbutton,问题! 关于按钮的小问题 追加记录思路 TemplatePower控件谁用过,Delphi下做网页报告的,在Builder上装不上 如何在MIDP中保存小数? 关于窗口设计 有责任感的中国人(水均益:我来谈京沪高速铁路 ),顶者有分!200分! 这里没有人关心Yokun吗?还是大家都在闭门造车? XP服务器安装后访问需密码,,该如何设置? 关于dc,hdc,getdc和pchar()的问题 急~~~在线等 上传主页。错误:530 Login incorrect 数据库问题 上傳的問題,急! TemplatePower控件谁用过,Delphi下做网页报告的,在Builder上装不上 怎样在IE打开的时候用JS隐藏IE的工具条 偶MM明天过生日了,我该送点什么她呢? 在线求助ReportBulider这样的报表如何做? 注册控件的问题 框架网页之间如何传递参数 怎样用Java获取linux上的各分区磁盘剩余空间,回答者一率有分!!!! Toolbar控件的困惑。 大家说国外比较好的控件下载网站有哪些?象源码空间那样,有破解下载的那种啊 在线求助ReportBulider这样的报表如何做? 什么是NGWS? 大家说国外比较好的控件下载网站有哪些?象源码空间那样,有破解下载的那种啊 flash中,字体怎么描边?? “十二五”如何应对气候变化? 介绍下汉末的黄巾军 维也纳是什么意思? 维也纳是什么 仰慕的意思 仰慕什么意思 仰慕已久的意思要准确的 仰慕是什么意思? 有关于板球的英文介绍 音乐之都维也纳 是一篇什么文 请问 斜齿轮的螺旋角很大齿数很小.标准公法线没办法测量?我该怎么办 尼日尔将为92名被困沙漠渴死移民进行外交部:中方将与上合组织各方一道进一亚太地区主要股市涨跌不一美媒:美国公布核弹更新计划 强化核威日本原子弹爆炸外籍幸存者要求安倍\"中方将与各方一道加大打击“三股势力”港媒:中央楼市思路初显 透露多点政策日本麦当劳就“禁流浪汉入店”道歉外交部就打击恐怖主义、叙利亚销毁化武世界主要城市11月2日天气预报英内政部报告称非法移民给英国带来沉重北京海淀一纪检干部嫖娼被双开安倍将访太平洋多个岛国拜鬼 牵制中国辽宁舰完成首次编队航行训练后返回青岛更正与说明元旦2万人天安门看升旗办7证等90天 公租房申请吓跑农民工时差绘本:从童话中读出各国文化(1)《25.3公里》 穿越城市的“行为艺巴基斯坦前总统穆沙拉夫涉犯叛国罪案第信贷资产证券化自留比明确细颗粒物污染成室内主要污染杜鹃传奇神女传奇永历大帝欢乐奇侠总裁的魅影情人凰之翼就做白日梦寒月狼尊围城女之圆奶娃小狐妃海天堂构旅游昆山公园旅游虹桥镇文化中心旅游宁波大学旅游黟县卢村木雕楼景区旅游韩琦庙旅游文峰塔旅游蒲松龄故居旅游黑山谷旅游苏仙岭旅游5.12汶川地震震中遗址旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘