如何实现条件组合查询

hnwjx 2000-04-10 10:35:00
各位专家:
现在我做的一个库存管理系统,当做到库存查询时,我是用几个checkbox控件和edit控件关联来选定查询条件的,各个查询条件之间是and关系。我是用query控件来查询的,请问各位,这个问题应如何实现?望各位用delphi写一个小程序发给我,我将感激不尽!
谢谢!!!
...全文
159 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hnwjx 2001-08-10
  • 打赏
  • 举报
回复
我的EMAIL:hnwjx@163.net
hnwjx 2001-08-10
  • 打赏
  • 举报
回复
各位,谁有单表通用组合条件查询的原代码:给我一份,我将不胜感激。
zoao 2000-04-11
  • 打赏
  • 举报
回复
我有一个Source,你要吗?
fyje 2000-04-11
  • 打赏
  • 举报
回复
var sqltext,ss,tt:string;
begin
sqltext:=query1.sql.text;
ss:='';
if checkbox1.checked then ss:=ss+checkbox1.caption+'='+edit1.text+' and ';
if checkbox2.checked then ss:=ss+checkbox2.caption+'='+edit2.text;
.
.
.
ss:=trim(ss);
tt:=copy(ss,length(ss)-3,3);
if pos('and',tt,[])>0 then ss:=copy(ss,1,length(ss)-3);
if pos('where',sqltext)>0 then sqltext:=sqltext+' and '+ss
else sqltext:=sqltext+' where '+ss;
query1.close;
query1.sql.clear;
query1.sql.add(sqltext);
query1.open;
end;
wsh 2000-04-11
  • 打赏
  • 举报
回复
方法如下:
设定一个Query1,其SQL为:Select * from KCXX Where 1>0
设KCXX为你要检索的数据表,可设定一按钮在其Click事件中写如下代码:
Query1.Close;
While Query1.SQL.Count>1 do
Query1.SQL.Delete(1);
If CheckBox1.checked Then
Query1.SQL.Add('And 字段1='+#39+Edit1.Text+#39);
If CheckBox2.Checked Then
Query1.SQL.Add('And 字段2='+#39+Edit2.Text+#39);
.....同理
Query1.Open;
其中的比较方式可自已更换,若想用模糊查询,则可将‘=’换成Like

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧