Delphi Can

Orjinalini görmek için tıklayınız: Veri Tabanı Bağlantı Yöntemi
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Merhaba
Delphi ile yazılmış büyük bir projemiz var, Veri Tabanı Sql Server Kullanıyoruz
Projemizde DataModule'de  Bir tane AdoConenction Var
Proje İlk Açıldığında Veri Tabanına Bağlanıyoruz ve Projede ki Tüm Datasetler Bu Connection Üzerinden 
Bağlanıp İşlem Yapıyor.
c# ile Proje Geliştiren Arkadaşım Genelde Her (Insert,Update,Delete,Select) İşleminde Yeni Connection oluşturduğunu
ve Pooling Özelliği Olduğu için yavaşlama olmadığını söylüyor.

Sizce;
Her işlemde Yeni Bağlantı Oluşturmak Sistemi Yavaşlatmaz mı ?
Her İşlemde Yeni Bağlantı Oluştuğu İçin 
Sql Server da SCOPE_IDENTITY() , @@SPID
gibi fonksiyonları kulanamamak dez avantaj oluşturmaz mı?
Siz Veri Tabanına Nasıl Bağlanıyorsunuz?

Teşekkür Ederim.
Merhaba.

- DBGrid tarzı bir bileşen kullanmadığınız sürece sürekli connected olmanıza lüzum yok. Sorgularınız SQLServer tarafında olduğu sürece yavaşlama olmaz.  

- Ben çalıştığım kurumda ortak RDBMS olarak Oracle ve SQLServer'da verilerimi tutuyorum. Veri listeleme için TListView ve görsel hücreleme için TStringGrid. 

- TListView için Çektiğim veri satır sayısı olarak (nominal bir kullanıcı için görüp inceleyebileceği olsa olsa 100 satır veridir) ortalama 50, Görsel olarak da aylık 31 sütun  x 100 satır;  ancak kaynak üzerindeki sorgulanan veri yükü onlarca sayıda tablo ve milyon kayıttan fazla.

- Burada hız tablo View kullanımınız ile Index kararlılığınız olacaktır. Ağ sağlığınızı ihmal ederek INSERT kaydınız ile SELECT ile çektiğiniz süreler hızlı ve yaklaşık denk olacak şekilde ise hızınız iyidir.
Cevabınız için Teşekkür Ediyorum.
Her istek de yeni sql server'a connect olmak özellikle client pclerden yavaşlığa neden olabileceğini düşünüyordum
bazen bir kaç saniye de connect olabiliyor.
fakat siz de bu şekilde kullanıyorsanız, bu yöntemi tekrar bir denemeliyim.
(10-09-2018, Saat: 11:07)emrahgs Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Cevabınız için Teşekkür Ediyorum.
Her istek de yeni sql server'a connect olmak özellikle client pclerden yavaşlığa neden olabileceğini düşünüyordum
bazen bir kaç saniye de connect olabiliyor.
fakat siz de bu şekilde kullanıyorsanız, bu yöntemi tekrar bir denemeliyim.
Her işlemde connect olmak yerine, kendi query nesnenizde connectioni kontrol etmek daha doğru olur. Bildiğim kadarıyla C# ' da delphi gibi görsel connection nesnesi olmadığından öyle yapmak zorunda kalıyorlar.
Yaptığın işlem doğru. Bir kere connect ol proje sonlanana kadar aynı connection üzerinden işlemlerine devam et vs...
c# diye bahsettiği durum web tabanlı projeler için geçerli bir durum. Bizim böyle bir yönteme ihtiyacımız yok.
Bir tek c# değil php python vs.. dillerde de connection her defasında sağlanıp iş bitince kapatılıyor.
Neden çünkü sql servera bağlantı lisanslamaya bağlı olabiliyor veya açık connection sayısı arttıkça performans sıkıntıları ortaya çıkabiliyor (iis, apache vs...).
Eğer lazım olursa Delphi içinde de Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız. desteği otomatik sağlanmaktadır. Eğer çok kanallı uygulama yoksa, tek ana program kanalından bağlantı yapılıyorsa tek Connetion bileşeni yeterli olacaktır.
Cevaplarınız teşekkür ederim.
evet biz delphi de genelde tek connection oluşturuyoruz
fakat sanırım vs da böyle yapmıyolar