query bileşeni içinde sorgular

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
sipi_raca
Üye
Mesajlar: 38
Kayıt: 07 Nis 2005 02:00

query bileşeni içinde sorgular

Mesaj gönderen sipi_raca »

Merhaba Arkadaşlar aynı şeyi veri tqbqnı kısmında sordumgerçi ama delphi bileşeni olduğundan buda sormamın daha doğru olacağını düşünüyorum. sitedeki konulara baktım AdoQuery ile örnekler var ama ben SQL Query bileşeni kullanıyorum söyle bir örnek için:

var
ilk_tarih : string;
son_tarih: string;
begin
AdoQuery1.Close;
AdoQuery1.SQL.Clear;
AdoQuery1.SQL.Add('select * from table');
AdoQuery1.SQL.Add('where field_name between :fld_ilk_tarih and :fld_son_tarih');
AdoQuery1.Parameters.ParamByName('fld_ilk_tarih').Value := StrToDate(ilk_tarih);
AdoQuery1.Paremeters.ParamByName('fld_son_tarih').Value := StrToDate(son_tarih);
AdoQuery1.Open;
end;

SQL Query bileşeninde parametrs özelliği yok bu şekilde nasıl parametre girebilirim? Yardımcı olursanız sevinirim
Başarı; Her zaman daha iyisini yapmak için gösterilen çabadır.
Kullanıcı avatarı
Kuri_YJ
Moderator
Mesajlar: 2248
Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:

Mesaj gönderen Kuri_YJ »

Selamlar,

Query1.ParamByName('Parametreniz').AsString

gibi yani FiledByName gibi kullanın.

Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
shadowmann
Üye
Mesajlar: 508
Kayıt: 30 Oca 2004 10:49

Mesaj gönderen shadowmann »

parametreli sorguda önce prepare komutunu kullanmanız gerekiyor. sizin örnekte prepare yok. dikkatimi celbetti.
Kullanıcı avatarı
ender_arslanturk
Kıdemli Üye
Mesajlar: 709
Kayıt: 18 Şub 2005 03:38
Konum: İstanbul

Mesaj gönderen ender_arslanturk »

Merhaba

Aslında prepare metodu sorgunun bir kere hazırlanması için vardır. Sorguda SQL cümlesinin değişmediği noktalarda aşağıdaki şekilde prepare kullanımı vardır.

Kod: Tümünü seç

Query1.Close;
if not Query1.Prepared then
Query1.Prepare;
Query1.Open;
şeklindedir. Yanlış bilgilendirme olmasın :D

Not: Her SQL Cümlesinde Prepare kullanımı sürekli performansın düşük olmasını sağlar. Bunada dikkat edelim....

Saygılarımla,
Cevapla