Yorumları: 123
Konuları: 51
Kayıt Tarihi: 07-11-2016
Rep Puanı: 66
Başlangıç
05-03-2018, Saat: 19:38
(Son Düzenleme: 05-03-2018, Saat: 19:39, Düzenleyen: Dostk.)
Merhaba; databaseden rastgele 2 adet veri çekeceğim, 1. veriyi çekmede sorun yok 2. veriyi nasıl çekebilirim?
TimerListele.Enabled := False;
With Form1.QSip do
begin
Connection := Form1.FDConnection;
Close;
SQL.Clear;
SQL.Add('Select * From KALIPLAR Where KALIP=:KP Order By Rand(ID) Limit 2');
ParamByName('KP').AsInteger := 1;
Prepared := True;
Open;
if Not IsEmpty then
begin
LabelLeft.Text := FieldByName('KALIP').AsString; // 1. veri
LabelRight.Text := FieldByName('KALIP').AsString;// 2. veri
end
Hayat bazen güzel olabiliyor.
Yorumları: 123
Konuları: 51
Kayıt Tarihi: 07-11-2016
Rep Puanı: 66
Başlangıç
Sorun yanlış anlaşıldı sanırım, veritanabı olarak olarak sqlite kullanıyorum.
Rastgele bir kayıt alabiliyorum, ikinci kayıttı aynı kodda nasıl alabilirim?
Hayat bazen güzel olabiliyor.
Yorumları: 4.249
Konuları: 381
Kayıt Tarihi: 07-07-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 17.135
Üstad
05-03-2018, Saat: 21:16
(Son Düzenleme: 06-03-2018, Saat: 17:20, Düzenleyen: Fesih ARSLAN.)
Merhaba,
SQLite veri tabanında limit ile belirlenen kayıt sayısının başlangıç değeri OffSet ifadesi ile bildirilir.
Limit ile 2 kayıt istediğinizi bildirmişsiniz. Offset ile de kayıt başlangıç numarasını vermelisiniz. Elde edilen kayıt kümesindeki ilk kaydın offset'ı sıfırdır. Hangi kayıttan itibaren iki kayıt almak istediğinizi belirtmeniz yeterli olacaktır.
Ör. Limit 2 offset 0 ifadesi ilk iki kaydı DataSet olarak döndürecektir.
DelphiCan'dır!
Yorumları: 123
Konuları: 51
Kayıt Tarihi: 07-11-2016
Rep Puanı: 66
Başlangıç
06-03-2018, Saat: 16:01
(Son Düzenleme: 06-03-2018, Saat: 17:22, Düzenleyen: Fesih ARSLAN.)
(05-03-2018, Saat: 21:16)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba,
SQLite veri tabanında limit ile belirlenen kayıt sayısının başlangıç değeri OffSet ifadesi ile bildirilir.
Limit ile 2 kayıt istediğinizi bildirmişsiniz. Offset ile de kayıt başlangıç numarasını vermelisiniz. Elde edilen kayıt kümesindeki ilk kaydın offset'ı sıfırdır. Hangi kayıttan itibaren iki kayıt almak istediğinizi belirtmeniz yeterli olacaktır.
Ör. Limit 2 offset 0 ifadesi ilk iki kaydı DataSet olarak döndürecektir.
Fesih bey, ilginize teşekkür ederim, biraz daha açıklayıcı bilgi verebilir misiniz?
Hayat bazen güzel olabiliyor.
Yorumları: 123
Konuları: 51
Kayıt Tarihi: 07-11-2016
Rep Puanı: 66
Başlangıç
merhaba;
Mod 2 = 0 ile denemeler yapmıştım ama bir türlü doğru sonucu alamamıştım.
sanırım SQL.Add('Select * From KALIPLAR Where KALIP=:KP Order By Rand(ID) Limit 2'); burada hata yapıyordum.
Teşekkür ederim.
Hayat bazen güzel olabiliyor.