Merhaba.
Tesadüfen test ederken fark ettim, databasede sadece bir satır olmasına rağmen, verileri çekerken showmessage ile test ettim fakat showmessage dört kez mesaj verdi, veri tabanında sadece bir kayıt olmasına rağmen dört kez döngüye girmesini nasıl çözebilirim???
procedure TForm3.Ayarlarim(Sender: TObject);
begin
try
with Ayarlar do
begin
Close;
SQL.Clear;
SQL.Add('Select * From ayar');
Prepared := True;
Open;
if Not IsEmpty then
begin
SHOWMESSAGE('Test');
end;
end;
finally
end;
end;
freeman35 yazdı:Ben with do ... kullanmam hiç bir zaman. "IsEmpty" kimin ve neye göre değişiyor?
TQuery.Open;
TQuery.First;
While not TQuery.EOF do begin
Aynen katılıyorum. While Do döngüsüyle kontrol daha sağlam oluyor. Tablonun son kaydına gelince döngü sona eriyor. Ben de While Do kullanıyorum.
Sanırım yanlış anlaşıldım veya anlatamadım, databasede tek satır var with do döngü ile ne ilgisi var, (While not TQuery.EOF do) da onlarca döncüye giriyor...