hafıza ve veritabanı hızı hakkında..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
serkan
Üye
Mesajlar: 666
Kayıt: 10 Tem 2003 12:08
Konum: bursa

hafıza ve veritabanı hızı hakkında..

Mesaj gönderen serkan »

arkadaşlar autocreate formlar formx.show la çağrılmasalar bile üzerindeki datacontrollerin bağlı olduğu datasetlerde değişiklik olurken o formlarda arka tarafta datacontroller işlem görüyormu eğer öyleyse program hakikaten yavaşlar diye düşünüyorum.sorum tam anlaşılsın diye örnek vereyim..
form1:ana form;
form2:stoklistesi;
form3:fatura_stoklistesi;
formların hepside autocreate olsun form2 ile form 3 stok_qry ye bağlı olsun ve üzerlerinde dbgrid olsun form2.show la formu görünür yapıp üzerindeki dbgridde satırlar arasında gezindiğimizde arka tarafta form3 deki dbgridde aynı şekilde satırlar arasında gezinmişmi oluyor..
eğer öyle ise lazım olan formu application.createform ile çağırmakmı hızı ve hafıza kullanımını iyileştirir yoksa tüm stok listelerini bir formda tutup stok listesinin hangi modülden çağrıldığını bir değişkenle yakalayıp..liste formu üzerinde modüle göre yaptığımız işlemleri if...then lerle kontrol etsek dahamı iyi olur hafıza ve hız açısından..
fikirleriniz için şimdiden sağolun arkadaşlar.
Kullanıcı avatarı
NewMember
Üye
Mesajlar: 990
Kayıt: 29 Haz 2005 06:57
Konum: Bursa

Mesaj gönderen NewMember »

Serkan Demişki:
formların hepside autocreate olsun form2 ile form 3 stok_qry ye bağlı olsun ve üzerlerinde dbgrid olsun form2.show la formu görünür yapıp üzerindeki dbgridde satırlar arasında gezindiğimizde arka tarafta form3 deki dbgridde aynı şekilde satırlar arasında gezinmişmi oluyor..
Evet aynen öyle oluyor.Belki bir kaç form autocreate olursa sorun olmaz ama bu sayı artınca sorun olur.Ayrıca düşünkü windowsta çalışan diğer programlarda aynı mantıkla çalışırsa o zaman vay windowsun haline.

Bunun iiçin şunu tavsiye ederim.Delphide sadece database kontrolleri için oluşturulmuş olan bir form çeşidi var.DataModule.Bundan kullanmanı tavsiye ederim.Bütün database kontrollerini bunun üzerine yerleştirirsin buradan erişirsin.Datamodulu autocreate yaparsın.Dolayısıyla yukarıda ki mantığın aynısını hafızayı yormadan gerçekleştirmiş olursun.Mantık gayet basit.
Adoquery1.Post yada Append yerine
DataModule1.Adoquery1.Append yada post dersin.
Kolay gelsin.
Cevapla