界面上有5个text输入框,要求在输入框中输入数据(条件),就可以对数据集进行过滤查找,不一定每个框都是全部有输入的,可以缺省的,使数据集同样变化,该如何简便控制啊,5各输入框啊????
解决方案 »
- 大虾帮忙(dbgrid picklist 问题)
- 窗体与窗体上的控件随分辨率的改变而相应改变大小,如何实现?
- 100分:听说有个report Machine 功能比 fastreport强大?欢迎大家讨论!UP有分!
- 如何在程序中设置某个字段的默认值Access 2000?对于字符串型的允许空字符串?
- 怎么获得DBGrid中有多少条记录?
- 如何控制其它程序的执行?
- 有关记录文件的操作!
- 菜鸟问题,请问那个函数或抄做符可以求A的B次方?
- 关于Tquery的数据库更新问题
- 怎样写个小server为Ajax提供实时数据?
- 如何在程序中得到,sqlserver数据表的每一列的描述
- 如果在运行时就给定的一个类得知它分别有哪些属性?
然后自己写条件。
例子(ADO),在adoquery里写:
declare @a varchar(10),@b varchar(10)...
Select *From 表
where (@a = '' or 字段a = @a) and (@b = '' or 字段b=@b)...
这样传出了参数,在程序中给@a,@b...赋edit框的值就可以了,edit框里为空时表示该字段不处理
StrSql:='select * from table '+
'where field1 like ''%'+Edit1.text+'%'' '+
'and field2 like ''%'+Edit2.text+'%'' '+
'and field3 like ''%'+Edit3.text+'%'' '+
'and field4 like ''%'+Edit4.text+'%'' '+
'and field5 like ''%'+Edit5.text+'%''';
begin
Str := '';
if edit1.text <> '' then
Str := Str + 'where field = ' + edit2.text;
if edit2.text <> '' then
Str := Str + 'and field = ' + edit2.text;
....
end;
'where field1 like ''%'+Edit1.text+'%'' '+
'and field2 like ''%'+Edit2.text+'%'' '+
'and field3 like ''%'+Edit3.text+'%'' '+
'and field4 like ''%'+Edit4.text+'%'' '+
'and field5 like ''%'+Edit5.text+'%''';
begin
str:='';
if edit1.text<>'' then
begin
str:=str+'field1='''+edit1.text+''''+' and '
end;
.....
str:=copy(str,1,length(str)-5);