sorgulama

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
TURGUT
Üye
Mesajlar: 54
Kayıt: 27 May 2005 03:19
Konum: ANKARA/ETİMESGUT

sorgulama

Mesaj gönderen TURGUT »

hepinize kolay gelsin.
Programda kullanıcının isteğine bağlı sorgulama yaptırıyorum.
örneğin kullanıcı form üzerinde hangi edit veya editlere veri girerse butona tıkladığımda ona göre sorgulama yapacak. Örneğin kw başlıklı edite veri girilirse kw göre kw,devir , irsaliye vs.. editlerine veri girilirse hepsine göre kontrol edecek.(tamamen kullanıcının isteğine bağlı) tek tek kontrol ederek yapmayı düşündüm ama çok uzun oldu bunun daha kısa bi yolu varmıdır.
örnek kod:tek bi şart olduğunda sorun yok
If edit2.text <>'' THEN
begin
sorgu:='select * from data where Teyid_No='+edit2.Text+' ';
param:='';
database(self);
END;
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Merhaba.
Eğer kriter sayısı fazla ise (sanırım öyle) componentcount kadar döngü kurarak ilgili editin textini kontrol etmek kaydıyla sorguya dahil edebilirsiniz.Bu noktada dikkat edilmesi gereken şey edite ilgili alan adını vermek olacaktır ki where şartına eklerken başka bir bağlantı ya da kontrole gerek kalmayacaktır.
Kolay gelsin.
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

kod belki optimize edilebilir ama sonucta bu tarz bir sey olacak... Yani ilgili alana deger girildiyse ilgili kosul where kısmına eklenecek.....

Ya da if kullanmıyayım derseniz....

Kod: Tümünü seç

sorgu:='select * from data where ('+QutotedStr(Edit2.Text)='+QutotedStr('')+'or Teyid_No='+QutotedStr(edit2.Text)+') '; 
tarzinda bir kod ile butun parametreleri ekleyebilirsiniz ama bundada parametre tiplerine gore bos olma kontrolleri epey can sıkıcı olabilir.....
* http://www.fahrettin.org Manzara Fotoğraflarım... :)
* http://delphiturkiye.gunduz.info Seminerler... ;)
* http://www.hakmar.com.tr Kalite bir haktır... 8)
TURGUT
Üye
Mesajlar: 54
Kayıt: 27 May 2005 03:19
Konum: ANKARA/ETİMESGUT

Mesaj gönderen TURGUT »

Merhaba Fahrettin Hocam cevabınız için teşekkür ederim sizden bu komut satırını biraz daha açmanızı isteyecem daha önce qutotedstr komutunu kullanmadım nedir nasıl kullanılır bilmiyorum bu konuda yardımcı olurmusunuz.
kod:

Kod: Tümünü seç

sorgu:='select * from data where ('+QutotedStr(Edit2.Text)='+QutotedStr('')+'or Teyid_No='+QutotedStr(edit2.Text)+') '; 
Kullanıcı avatarı
Fatih!
Kıdemli Üye
Mesajlar: 1172
Kayıt: 26 Kas 2004 10:46
Konum: Malatya
İletişim:

Mesaj gönderen Fatih! »

fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Sanırım pek kimsenin dikkatini çekmedi. Açıklamasını daha düzgün yazman gerekirdi herhalde. Aynı türdeki sorular için son kez bu linki vereyim.

viewtopic.php?t=8668
Cevapla