Hayırlı günler. Yaptığım uygulamada Edit1Change ile kayıtları görmek istiyorum.
Delphi XE7 kullanıyorum.
ADOQuery1 SQL ine
SELECT ID, A1, A2,
CONCAT (A1, A2) AS ARA
FROM KAYITLAR
ORDER BY ID DESC
yazarak formda kayıtlarımı görüntülüyorum. ancak "ARA" sütununun içerisinde içeren bir kelime aradığım zaman
ADOQuery1 .SQL.Clear;
ADOQuery1 .SQL.Add('Select * From KAYITLAR where ARA like ' +chr(39)+ Edit1.text +chr(39) );
ADOQuery1 .ExecSQL;
ADOQuery1 .Open;
Bu kod çalışmıyor. Bu konuda bana yardımcı olursanız memnun olurum.
Edit1'e kelime girdikçe sorgulama yapsın.
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 30
- Kayıt: 08 Oca 2025 10:35
Re: Edit1'e kelime girdikçe sorgulama yapsın.
Bunu yapmanızı önermem. O kadar yoğun veritabanı sorgusu yerine ara butonu gibi bir buton tıklama ile arama yapması daha sağlıklı olacaktır.Ertuğrul2025 yazdı: 30 Nis 2025 03:01 Hayırlı günler. Yaptığım uygulamada Edit1Change ile kayıtları görmek istiyorum.
Hatanız SQL komutuna ADD() kullanarak ekleme yapmak. Ancak siz her defasında sıfırdan SQL sorgusu hazırlamanız gerekiyor.
Ayrıca LIKE SQL kulllanımında başlangıç ya da bitişi içeren araması yapması için % karakteri eklemelisiniz.
Son olarak ExecSQL komutu INSERT / UPDATE gibi geriye veri çevirmeyen sorgular için kullanılır.
Geriye veri çeviren sorgularda Open kullanmalısınız.
Aşağıdaki gibi kodunuzu değiştirdiğiniz zaman istediğiniz şekilde çalışması gerekir
Kod: Tümünü seç
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text := 'Select * From KAYITLAR where ARA like ' + QuotedStr('%' + Edit1.Text + '%');
ADOQuery1.Open;
-
- Üye
- Mesajlar: 30
- Kayıt: 08 Oca 2025 10:35
Re: Edit1'e kelime girdikçe sorgulama yapsın.
Allah razı olsun hocam.ertank yazdı: 30 Nis 2025 06:13Bunu yapmanızı önermem. O kadar yoğun veritabanı sorgusu yerine ara butonu gibi bir buton tıklama ile arama yapması daha sağlıklı olacaktır.Ertuğrul2025 yazdı: 30 Nis 2025 03:01 Hayırlı günler. Yaptığım uygulamada Edit1Change ile kayıtları görmek istiyorum.
Hatanız SQL komutuna ADD() kullanarak ekleme yapmak. Ancak siz her defasında sıfırdan SQL sorgusu hazırlamanız gerekiyor.
Ayrıca LIKE SQL kulllanımında başlangıç ya da bitişi içeren araması yapması için % karakteri eklemelisiniz.
Son olarak ExecSQL komutu INSERT / UPDATE gibi geriye veri çevirmeyen sorgular için kullanılır.
Geriye veri çeviren sorgularda Open kullanmalısınız.
Aşağıdaki gibi kodunuzu değiştirdiğiniz zaman istediğiniz şekilde çalışması gerekirKod: Tümünü seç
ADOQuery1.SQL.Clear; ADOQuery1.SQL.Text := 'Select * From KAYITLAR where ARA like ' + QuotedStr('%' + Edit1.Text + '%'); ADOQuery1.Open;