怎样使用query的filter(30分)

  • 主题发起人 主题发起人 鹦鹉
  • 开始时间 开始时间

鹦鹉

Unregistered / Unconfirmed
GUEST, unregistred user!
请教一个问题,我想在程序运行中对数据库过滤显示。
比如有一些查询选择项目,包括时间,人员,货物种类,当我选择好想要的查询过滤
之后,能够把我选择的过滤项目输入到filter之中,点击一个button,dbgrid就
只显示我想要的数据内容?
比如filter的过滤内容为我选择的某一个时间段内的数据库记录,
比如filter的过滤内容为我选择的某一个客户购买记录,
比如filter的过滤内容为我选择的某一个商品的销售记录。
 
如果是tquery,直接用where子句就可实现这些功能,不用用filter.
当然也可以用query的filter属性或onfilterrecord事件,记得filtered要
设为true,这样做比直接用sql语句慢.
 
with query do
begin
if not Filtered then
Filtered := true;
Filter := '编号=1';
end;
 
同意楼上
 
更改filtered属性前要先关闭tquery.
 
Query.Filtered := false;
//字符串,其实就是select查询中的where后面的内容,条件值可以变量方式传入
Query.filter := '';
Query.Filtered := true;

如果要回复过滤前的状态
Query.Filtered := false;
 
多人接受答案了。
 
后退
顶部