DELPHI查询问题(0分)

  • 主题发起人 主题发起人 kexsong
  • 开始时间 开始时间
K

kexsong

Unregistered / Unconfirmed
GUEST, unregistred user!
在应用程序的开发过程中,查询是少不了的事情,当然,用delphi也不例外。比如:有
一个用户查询界面,上面有四个输入框:学号(StuID)、姓名(Nmae)、性别(Sex)和成绩
(Grade).当四个框全为空的时候,要求把全部学生的情况都显示出来;当四个框不全为空
的时候,要求把符合条件的学生情况显示出来。
本人用一般的if。。。else语句也可以编出来,但是语句很多,况且,语句会与查询
参数成2的数量级递增。
所以小弟想请教大虾们,可以用存储过程或者带参数查询或者别的方法能更简单些吗?
小弟感激不尽!!!!!!
 
首先加一个正确条件如
with Query1 do
begin
Close;
SQL.Clear;
SQL.Add('select * from Student');
SQL.Add('where 1=1');
end;
然后判断各个条件是否为空,如果全部为空,肯定能把所有的值查出来
否则按照某几个条件查
 
with Query1 do
begin
Close;
SQL.Clear;
SQL.Add('select * from Student');
SQL.Add('where stuid like %stuidValue% and Name like %NameValue% ....);
end;
 
if 全部为空
with Query1 do
begin
Close;
SQL.Clear;
SQL.Add('select * from Student');
end;
else

Query1.SQL.Add('where stuid like %stuidValue% and Name like %NameValue% ....);
Query1.execsql;
 
当然可以用存储过程实现,只不过和在DELPHI中一样也要用到很多的参数,
碰这种情况,就只有你自己尽量简化你的SQL 语句了。
 
试试轩辕散光的吧!
 
[brown][/brown]谢谢各位DELPHI高手!!小弟感激不尽!!
 
接受答案了.
 
后退
顶部