KULLANICI VERİ TABANI

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
memin123
Üye
Mesajlar: 2
Kayıt: 16 Mar 2017 08:46

KULLANICI VERİ TABANI

Mesaj gönderen memin123 »

İyi günler bilgisayar programcılığı son sınıf son dönem öğrencisiyim bitirme projem var.Access veri tabanında bulunan kullanıcı adi ve parolayla giriş yapmak istiyorum bunun için adoconnection ve adoquery kullandım.Kodlamayı yaparken hata alıyorum ama hatanın çözümünü bir türlü bulamadım.

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text:='select * from kullanici where kadi='+Edit1.Text+' and parola='+Edit2.Text+';
ADOQuery1.Open;
if ADOQuery1.RecordCount>0 then
begin
ShowMessage('Hoşgeldiniz');
end;
end;

end.

kodlamalar bunlar
hata veren bölüm ve hata nedenleri aşağıdaki resimde

https://gyazo.com/86997b4d4178d0efb52c8e22e5e6aac5
Kullanıcı avatarı
cengaver
Üye
Mesajlar: 111
Kayıt: 01 Nis 2014 05:02
Konum: İstanbul

Re: KULLANICI VERİ TABANI

Mesaj gönderen cengaver »

Kod: Tümünü seç

ADOQuery1.SQL.Text:='select * from kullanici where kadi='+Edit1.Text+' and parola='+Edit2.Text+';
olan satırı şu şekilde değiştir;

Kod: Tümünü seç

ADOQuery1.SQL.Text := format ( ' select * from kullanici where ((kadi = %s) and (parola = %s)) ' , [ QuotedStr(Edit1.Text), QuotedStr(Edit2.Text) ] ) ;
Sorun, parametreleri tırnak içinde kullanmamandan kaynaklanıyor. Yani sen aslında aşağıdaki gibi yazıyorsun

Kod: Tümünü seç

select * from kullanici where kadi=falan and parola=filan
ama şöyle olmalı;

Kod: Tümünü seç

select * from kullanici where kadi='falan' and parola='filan'
Cevapla