SQL的动态查询?——初学者急需帮助(30分)

  • 主题发起人 主题发起人 wp531
  • 开始时间 开始时间
W

wp531

Unregistered / Unconfirmed
GUEST, unregistred user!
[?]今天,我发现like和and 差不多,还是不能满足真正的动态查询,13个查询条件,
用if语句得有多少种组合?老天!like 和 and 一样,必须表里的字段有值,才能查到,
比如查籍贯,如果籍贯为空值,则用like的组合查询,什么也查不到。谁有源代码借我
看一看。谢谢。wp531@sina.com 动态查询是通过edit.text实现的。
查询条件是姓名、性别、年龄、学历、籍贯、职称、党派等等。
 
先把你写的代码贴出来?
 
关注此题!
 
没太理解你的意思,前些天我碰到的是NULL问题,也许你需要:
查询空值的SQL语句(空用NULL表示):
SELECT * FROM TABLE WHERE (XINGMING LIKE :P_XM)OR(XINGMING IS NULL)
这样可以查出符合条件的记录和姓名字段是空的。

 
‘查找’代码:
procedure TFindForm.FindButtonClick(Sender: TObject);
begin
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('Select * from info');
Query1.SQL.Add('where 姓名 like ''%'+EditName.text+'%'' and 性别 like ''%'+editSex.text+'%'' and 民族 like ''%'+editMinzu.text+'%''');
Query1.ExecSQL;
Query1.Open;
end;
 
关注此题
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部