N
nids
Unregistered / Unconfirmed
GUEST, unregistred user!
一个关于d6的filter的问题(也许有点难)。
首先,我认真阅读了delphibbs.com截至2002-06-12的离线数据库中的相关文件,知道也许可以用 Dataset 的 OnFilterRecord 解决这个问题。或者使用sQL语句,当然,这些解不是我要的,要不我就不来问这个问题了;呵呵。下面是问题:
1。这个是一个数据库系统。
2。Tquery控件+Tdatasource控件做数据源。一个TdataGrid显示数据。
3。一个TComboBox和一个Tedit作为查询的条件输入.其中combobox中为字段名称
一个按钮触发查询事件,代码的概要是这个样子的:
begin
case combobox.itemindex of
0:;
1:
begin
query1.filtered:=false;
query1.filter:='field1=' + Quotedstr(edit1.text + '*');
query1.filtered:=true;
2:{这里的代码类似于1:后面的,就是field1变成field2};
{
这里还有3:,4:....
}
end
end
程序运行成功!
问题是,我在combobox的最上面添加了一个'全部',意思是使得任意一个字段有edit1.text就有query1的结果集。
那么,我在0:后面应该添加如何的代码那?
最好做个试验,我使用如下的代码不行:
query1.filtered:=false;
query1.filter:=('field1=' + Quotedstr(edit1.text + '*')) or
('field2=' + Quotedstr(edit1.text + '*')) ;
query1.filtered:=true;
首先,我认真阅读了delphibbs.com截至2002-06-12的离线数据库中的相关文件,知道也许可以用 Dataset 的 OnFilterRecord 解决这个问题。或者使用sQL语句,当然,这些解不是我要的,要不我就不来问这个问题了;呵呵。下面是问题:
1。这个是一个数据库系统。
2。Tquery控件+Tdatasource控件做数据源。一个TdataGrid显示数据。
3。一个TComboBox和一个Tedit作为查询的条件输入.其中combobox中为字段名称
一个按钮触发查询事件,代码的概要是这个样子的:
begin
case combobox.itemindex of
0:;
1:
begin
query1.filtered:=false;
query1.filter:='field1=' + Quotedstr(edit1.text + '*');
query1.filtered:=true;
2:{这里的代码类似于1:后面的,就是field1变成field2};
{
这里还有3:,4:....
}
end
end
程序运行成功!
问题是,我在combobox的最上面添加了一个'全部',意思是使得任意一个字段有edit1.text就有query1的结果集。
那么,我在0:后面应该添加如何的代码那?
最好做个试验,我使用如下的代码不行:
query1.filtered:=false;
query1.filter:=('field1=' + Quotedstr(edit1.text + '*')) or
('field2=' + Quotedstr(edit1.text + '*')) ;
query1.filtered:=true;