Herkese iyi çalışmalar;
SP lerimde result set elde edebilmek için suspend komutunu for select içine alıyorum. Bu yapının doğruluğundan şüpheliyim çünkü ağ ortamında for select döngüsü kaç kere dönerse client ile server arsında o kadar veri alış verişi olacak demektir. Örnek kod:
For
select id from tablo1 into :id
do
begin
burda işlemler yapılıyor ve en son
suspend;
end
şimdi for döngüsü ilk çalıştığında suspend komutu ile sonuçları client tarafına gönderdi. bi daha çalıştı bi daha gönderdi. Network ortamında çalışan bir sistemde çok fazla kayıt varsa ve output parametrelerimiz çoksa kullanıcıyı baya bekletmiş olcaz. suspend komutunu dışarı aldığımızda ise kullanıcıya result set değil de output parametrelerinin son aldığı değerleri göndermiş olcaz. İşte burda işin içinden çıkamadım. Yoksa suspend komutu for döngüsünün tekrarı kadar değilde bir keremi çalışıyor.
comfort yazdı:Herkese iyi çalışmalar;
...
Yoksa suspend komutu for döngüsünün tekrarı kadar değilde bir keremi çalışıyor.
Tabi ki her kayıt için ayrı araç kiralamak gerekmez. Select ten dönen tüm kayıtları paketleyip uygun araçla gönderebilirsin.. Kullandığın yapıda bir terslik yok. Sonu.ta bir tablodan kayıtları aldığın gibi bir kayıtlar seti dönüyor
Bir de istemci/client tarafa gönderme olayına takılmayın. Aslında bir yere bir şey gönderdiği yok, olamaz da Sadece VT den dışarı çıkarıyor. Dışarı çıkanlara da VT karışmaz artık
hocam sorun şu aslında. benim demek istediğim network trafiğini yoğun tutmamak. yani result set paket halinde gidiyorsa ok. ama her kayıt teker teker server dan client a gönderilirse bu 100.000 kayıtta problem olmazmı.
Kullanıcıyı bekletmezmi.Sonuçta netwrokte benim programım dışında da bir trafik yaşanıyor. Hepten kitlenip kalmayalım. Ben anlamadım heralde sizin demek istediğnizi. kusura bakmayın
Ağ ortamında bilgilerin küçük paketler (tek tek) gitmesi ile topluca (büyük paketler halinde) gitmesi atıyorum yüzde 10 bilemedin yüzde 20 ek yük getirir. Asıl önemlisi veritabanı yapısını uygun şekilde tasarlamak, gereksiz trafiği önlemek açısından daha faydalı. Yoksa bir anda 100 bin kayıtları döndüren yapıların baş ağırtması kaçınılmaz