Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Access bağlantı
#1
Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?
Cevapla
#2
(27-09-2021, Saat: 22:52)woywod Adlı Kullanıcıdan Alıntı: Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?

create değil formun show'una koyarak dene
Cevapla
#3
(28-09-2021, Saat: 02:06)meko Adlı Kullanıcıdan Alıntı:
(27-09-2021, Saat: 22:52)woywod Adlı Kullanıcıdan Alıntı: Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?

create değil formun show'una koyarak dene

Denedim Olmadı?
Cevapla
#4
(27-09-2021, Saat: 22:52)woywod Adlı Kullanıcıdan Alıntı: Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?

Merhaba,

Böyle dener misiniz.
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='''+ cari_ID.ToString+''' ');//bir adet parametre yaratıldı
ADOQuery1.Open;
end;

Close etmemişsiniz aslında sorun bu.
Cevapla
#5
(28-09-2021, Saat: 14:39)pro_imaj Adlı Kullanıcıdan Alıntı:
(27-09-2021, Saat: 22:52)woywod Adlı Kullanıcıdan Alıntı: Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?

Merhaba,

Böyle dener misiniz.
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='''+ cari_ID.ToString+''' ');//bir adet parametre yaratıldı
ADOQuery1.Open;
end;

Close etmemişsiniz aslında sorun bu.
Teşekurler Elinize saglık calıstı Smile
Cevapla
#6
Merhaba,

@pro_imaj 'a alternatif olarak parametreyi doğrudan SQL içerisine enjekte etmektense bu şekilde daha rahat olabilir ;

  with ADOQuery1 do
 begin
   Close;
   SQL.Clear;
   SQL.Add('select * from isimler where ad =:sy1');
   Parameters.ParamByName('sy1').Value := 'Mr.X';
   open;
 end;

En azından tırnak işaretlerinden kurtulmuş olursunuz. Tırnaklar fazla kafa karıştırıcı olabiliyor uzun SQL cümleciklerinde.
Cevapla
#7
(30-09-2021, Saat: 20:27)Mr.X Adlı Kullanıcıdan Alıntı: Merhaba,

@pro_imaj 'a alternatif olarak parametreyi doğrudan SQL içerisine enjekte etmektense bu şekilde daha rahat olabilir ;

  with ADOQuery1 do
 begin
   Close;
   SQL.Clear;
   SQL.Add('select * from isimler where ad =:sy1');
   Parameters.ParamByName('sy1').Value := 'Mr.X';
   open;
 end;

En azından tırnak işaretlerinden kurtulmuş olursunuz. Tırnaklar fazla kafa karıştırıcı olabiliyor uzun SQL cümleciklerinde.
Tesekurler...
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi ile SQL server bağlantı hatası yakalama Under 20 2.014 21-11-2025, Saat: 15:24
Son Yorum: mrmarman
  ADOConnection bağlantı kontrolü hakkında mxpain 1 549 26-05-2025, Saat: 11:49
Son Yorum: mrmarman
  Office programları olmayan PC'den Access database erişimi. enigma 1 593 04-03-2024, Saat: 13:47
Son Yorum: gbg
  Database bağlantı sorunu Tevet 6 3.283 20-01-2022, Saat: 13:49
Son Yorum: Tevet
  FiraDAC Bağlantı Hatası codder71 15 5.987 05-04-2021, Saat: 14:15
Son Yorum: codder71



Konuyu Okuyanlar: 1 Ziyaretçi