Birden Fazla table içinde Adoquery ile sorgulama yapmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
memoli79
Üye
Mesajlar: 29
Kayıt: 05 Nis 2007 01:29

Birden Fazla table içinde Adoquery ile sorgulama yapmak

Mesaj gönderen memoli79 »

Herkese Merhaba;
yapmış olduğum program 7 adet table'dan oluşuyor.
Ben bunları innerjoin ile birbrine bağladım.

Adoguery kullanıyorum.

Daha sonra formuma bir adet cxgrid ve 1 adet edit alanı koydum.

Yapmak istediğim olay;

edit'in içine girdiğim kritere göre arama sorgu yapıp cx gridde sonucu almak.

cxgridi adoquery başladım.

adoquery nin aktifini true yapınca tüm kayıtlar gridde gözüküyor.

Sadece sorgulama kısmında takıldım.

Şimdiden yardımcı olana herkese çok teşekkür ediyorum.

Yardımlarınızı bekliyorum.
bgoktas
Kıdemli Üye
Mesajlar: 769
Kayıt: 27 Nis 2004 10:32
Konum: istanbul

Re: Birden Fazla table içinde Adoquery ile sorgulama yapmak

Mesaj gönderen bgoktas »

Nasıl yani :D

Kardeş ,
1-sorguyu hazırladın(bir query'nin sql'ine atadın)
2-bir datasource koydun
3-Datasource'un dataset'ine query nesnesini atadın
4-cxgridin databinding 'ine datasource ' u atadın
5-bir butonun click'ine veya başka bir yere ( formcreate vs) query'inin active'ini true yaptıysan veriler gridde gözükür. Buradan, eğer edite girdiğin kriteri sorguna eklemek istiyorsan parametre kullanmalısın. Mesela query.sql şu şekilde olmalı

Kod: Tümünü seç

Select * from tblPersonel Where PerId=:edittekideger
query'nin active'ini true yapmadan önce de ;

Kod: Tümünü seç

Query.Paramaters[0].Value:=Edit1.text;
yaparsan editteki alana göre sorgulama yapmış olursun...


Kolay Gelsin...
akdatilla
Üye
Mesajlar: 292
Kayıt: 02 Nis 2006 06:04
Konum: Antalya

Re: Birden Fazla table içinde Adoquery ile sorgulama yapmak

Mesaj gönderen akdatilla »

s.a.
Ben size basit bir sorgunun edit nesnesinin değerine göre nasıl çalıştırılabileceğini bir örnek ile göstereyim.
Siz 7 tabloyu birleştiğiniz sql cümlesine uyarlayın.

Kod: Tümünü seç

procedure TForm1.Edit1Change(Sender:TObject);
begin
//DataSource1.Enabled:=False;
AdoQuery1.Close;
AdoQuery1.SQL.Text:='SELECT * FROM REHBER WHERE ADI LIKE '#39+Edit1.Text+'%'#39;
AdoQuery1.Open;
//DataSource1.Enabled:=True;
end;
kolay gelsin.
memoli79
Üye
Mesajlar: 29
Kayıt: 05 Nis 2007 01:29

Re: Birden Fazla table içinde Adoquery ile sorgulama yapmak

Mesaj gönderen memoli79 »

Yardımlarınız için çok teşekkür ederim.

Herkese iyi çalışmalar.
Cevapla