sorgu hatası

Diğer veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
zaxacm
Üye
Mesajlar: 129
Kayıt: 05 Ara 2005 05:48

sorgu hatası

Mesaj gönderen zaxacm »

Aşağıdaki combobox a göre arama kodlarını kullandığımda şu hatayı alıyorum sorun nerde acaba?
Hata şöyle :
"like '%A%' sorgu ifadesi içindeki sözdizimi hatası(eksik ilgeç)


procedure TFana1.Edit1Change(Sender: TObject);
var kriter :string;
begin
Case combobox1.ItemIndex of
0 : kriter:='ad';
1 : kriter:='soyad' ;
2 : kriter:='tc' ;
end;
fdata.ADOQuery1.Close;
fdata.ADOQuery1.Sql.Clear;
fdata.ADOQuery1.Sql.Add('Select * From musteriler Where '+kriter+' like '+QuotedStr('%'+Trim(Edit1.Text)+'%'));
fdata.ADOQuery1.Open;
end;

@mrmarman yazdı:TAŞIMA BİLGİSİ : Programlama formundan DİĞER VERİTABANLARI formuna taşınmıştır
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Combobox değeri -1 olabilir mi? Eğer öyle ise kriter değişkeniniz gerekli değeri alamaz ve sorguda hata çıkabilir. Aslında kodlarınızda hata yok gibi ama benim aklıma bu nokta da hata çıkabilir diye geldi.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Veri tabanı nedir :?:

@sabanakman ın dediği gibi kriter değişkeniniz değer almayabilir :idea: O kısmı şöyle değiştirip işi garanti edebilirsiniz;

Kod: Tümünü seç

...
Case combobox1.ItemIndex of
  0 : kriter:='ad';
  1 : kriter:='soyad' ;
  else
    kriter:='tc' ;
end; 
...
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
zaxacm
Üye
Mesajlar: 129
Kayıt: 05 Ara 2005 05:48

Mesaj gönderen zaxacm »

Çok teşekkürler -1 miş.Herkese iyi çalışmalar.
Cevapla