Sql select hakkında..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ikut

Sql select hakkında..

Mesaj gönderen ikut »

Merhaba

Dbisam içindeki VT de anahtar kelimeler ve karşısındada bunların karşı alanları var.

Yaptığım şey şu... yukardaki bir edite bilgi yazdıkca buna aygun kayıtları seçmesini istiyorum. Ama her tuşta select yapınca haliyle yavaşlıyor. Ama bu onchange olayını özellikle kullanıyorum tuşa butona tıklama derdi olmasın.

Kod: Tümünü seç

  Dm.TblBt.SQL.Clear;
  Dm.TblBt.SQL.Add('Select * from Bt where Domestic like ''%'+EdtSearch.Text+'%''');
  Dm.TblBt.Open;
birde burada büyük küçük harf ayrımı yapmadan tüm kayıtları bulmasını istiyorum. bunu nasıl yaparım...

Teşekkürler
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Re: Sql select hakkında..

Mesaj gönderen pro_imaj »

ikut yazdı: Ama bu onchange olayını özellikle kullanıyorum tuşa butona tıklama derdi olmasın.
Hocam onchange olayına değilde onkeyup olayına

Kod: Tümünü seç

if key=13 then
begin
//sql kodunuz
end;
Kullanıcı edit içindeyken enter tuşuna bastığında !

ikinci sorunun cevabıda forumda daha önce geçti şu an aklıma gelmiyor arasan bulursun.
Kolay gelsin.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
ikut

Re: Sql select hakkında..

Mesaj gönderen ikut »

merhaba

Benim derdim olayın kendisi değil onchange sık çağrıldığında yavaşlama olması. Sql içinde buna bir önlem olabilirmi dedim. mesela

%x% yerine x% yapsam like içinde belirgin bir hızlanma oluyor

saygılar
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Büyük harf sorgulama

Mesaj gönderen sabanakman »

Kod: Tümünü seç

Dm.TblBt.SQL.Clear;
  Dm.TblBt.SQL.Add('Select * from Bt where ucase(Domestic) like ''%'+AnsiUpperCase(EdtSearch.Text)+'%''');
  Dm.TblBt.Open; 
şeklinde büyük harf duyarlılığını kaldıra bilirsin.

Not:"ucase" fonksiyonu Access için diğer vt'lerde "upcase", "uppercase" vs. olabilir. Ayrıca AnsiUpperCase fonksiyonu i->I yapar ve ı harfini değiştirmez. Buna önlem olarak kendi fonksiyonun yazabilirsin ama SQL içindeki fonksiyonla uyumlu olmayabilir.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Re: Sql select hakkında..

Mesaj gönderen pro_imaj »

ikut yazdı:merhaba

Benim derdim olayın kendisi değil onchange sık çağrıldığında yavaşlama olması. Sql içinde buna bir önlem olabilirmi dedim. mesela

%x% yerine x% yapsam like içinde belirgin bir hızlanma oluyor

saygılar
Böyle bişey olacağını sanmıyorum.

Mantığa aykırı zaten sen sorguyu açıyorsun de diyorsun ki x alanının içinde editteki geçiyorsa diyorsun like başlı başına sql kasmaya yereli bir neden sen bunu her harf yazdığında yapıyorsan işin baya zor.

Sizin çalıştığınız veri tabanındaki kayıt sayısı milyonlara ulaşsaydı ne yapardınız merak ettim doğru bir harfe basıp çay alır içerdiniz. Neyse konuya döneyim.


Siz listeletme işlemini hangi bileşenle yapıyorsunuz peki ? Eğer bunu söylerseniz (cxgrdi kullanıyorsanız) bunu çok basit yapabilrsiniz.

Saygılarımla
Kolay gelsin.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Cevapla