怎样让DBGrid1显示查询结果? 找服装店销售软件
ADOTable1.Locate(''Name'',Edit1.Text,[loCaseInsensitive, loPartialKey]);
if not ADOTable1.Locate(''Name'',Edit1.Text,[loCaseInsensitive, loPartialKey]) then
showmessage(''对不起,没有您要查找的记录!'');
来查找数据记录。
问:如何能让DBGrid1只显示符合查找条件的记录而不显示其他记录呢?
2楼: 用Adotable的Filter功能 如免费的记账软件
3楼: 能不能告诉我怎么用呢?谢谢
4楼: ADOTable1.Filter:=''Name=''+QuotedStr(Edit1.Text)
5楼: 还是不行啊
6楼: ADOTable1.Filter:=''Name=''+QuotedStr(Edit1.Text);
ADOTable1.Filtered := True;
记账软件版7楼: 这种情况应该使用 adoQuery, 使用sql 查询, sql 查询很灵活, 同样可以进行模糊查询, 相当于 你现在 使用 locate 配合 loPartialKey 。
8楼: 用Filter就好,很容易的。
9楼: 用select...where...语句啊....挺灵活的....
10楼: 还是习惯用ADOQUERY吧,这个好用的!
11楼: to:qq172
建议多用ADODataSet,
select * from .. where name = :P
传一个参数就可以
既然用SQL server 200为何不用存储过程呢?
如果愿意
可以联系我:QQ:120513682
12楼: 如果数据量大不要用Filter,刷新速度太慢。
要使用ADOQUERY 如服装店销售软件
13楼: 1.ADOTable1.filtered:=false;
ADOTable1.Filter:=''Name=''+QuotedStr(Edit1.Text);
ADOTable1.Filtered := True;
2.用ADOQUERY1来过滤记录
with ADOQuery1 do
begin
close;
sql.clear;
sql.add (select * from where name=:a);
parameters.ParamByName(''a''):=trim(edit1.text);
open;
end;
记账软件版14楼: 直接连接到数据库了之后呢,就连接到source中,在sourece中连接到query1中,然后在query1中的STRING写上你的查询语句,最后呢,把你的query1的active改为true 就可以了!
15楼: 多人接受答案了。