procedure TForm1.Button1Click(Sender: TObject);
begin
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('select ADI,SOYADI,TARİH from TABLOM');
Query1.SQL.Add('Where ADI like :adi and');
Query1.SQL.Add('SOYADI like :soyadi and');
Query1.SQL.Add('TARİH like :tarih');
if edit1.text = '' then query1.ParamByName('adi').AsString:='%' else query1.ParamByName('adi').AsString:=edit1.Text;
if edit2.Text = '' then query1.ParamByName('soyadi').AsString:='%' else query1.ParamByName('soyadi').AsString:=edit2.Text;
if edit3.Text = '' then query1.ParamByName('tarih').AsString:='%' else query1.ParamByName('tarih').AsString:=edit3.Text;
query1.Prepare;
query1.open;
end;
Kodları kendine uyarlayabilirsin, hangi edit'e yazarsan ona göre sorgular, yada istersen hepsini doldur farketmez. Ayrıca edit içerisinde "%" işareti kullanırsan bu "herhangi sayıda, herhangi bir karakter", "_" işareti kullanırsan "tek bir tane ve herhangi bir karakter" anlamına gelir. Ben paradoks veritabanında kullanmak üzere yazmıştım.