ADO.NET’TE CONNECTED DİSCONNECTED MİMARİLER
26 Temmuz 2010 – 14:58ADO.NET teknolojisi ile veritabanından veri çekmenin 2 yolu vardır.
- Connected Mimari
- Disconnected Mimari
Connected Mimari:
Bu mimaride veri tabanından veri çekme süresi boyunca uygulama veritabanına bağlı kalır ve bilgiler bağlı kalma süresi boyunca çekilebilir.Veri çekmek için veritabanına sürekli bağlı olması zorunluluğundan dolayı sql server sürekli meşgul olur,bu bir dezavantajdır.Connected ile veri çekebilmek için SqlCommand ile ConnectionString yazılır ve veriler SqlDataReader ile okunur.SqlDataReader ile veriler tek tek okunur,bu da bir dezavantaj sayılabilir.Connected mimarinin güzel yönlerinden bir tanesi sqlden alınan verilerin daima en güncel veriler olmasıdır,yapılan bütün değişikler direk veritabanına yansıdığı için veri alınacağı zaman da en güncel veriler gelir.Connected yapıda disconnected yapıya göre veriler daha hızlı çekilir(datareaderden dolayı)
Disconnected Mimari:
Bu mimaride uygulama sqle bağlı olmaz,bağlı olmadan veriler çekilir.Peki nasıl oluyor da bağlı olmadığı halde veritabanından veri çekebiliyor?Uygulamanın veritabanına bağlı olmadan veri çekmesini sağlayan yapı SqlDataAdapterdır.Disconnected mimaride SqlDataAdapter nesnesi oluşturulur ve bu aracı nesne sayesinde veri tabanından veri çekilir,bütün bağlantılar bunun üzerinden yapılır.Uygulama veritabanına hiç bağlanmadığı için de buna disconnected yapı denilmiş.Disconnected mimaride bağlantı açılıp kapanmaz,SqlDataAdapter bağlantıyı kendisi açar kapatır.DataAdaptör üzerindeki sql verileri datatable ve datasetlere doldurulur(fill).Böylece sqldeki veriler kullanıma hazırdır.
DataTable—->bellek üzerindeki tablodur
DataSet——>bellek üzerindeki datatablelardır(oluşturulan datatablelar datasete atılır)
Disconnected yapıda uygulama veritabanına bağlı olmadığı için veritabanını meşgul etmek anlamında connected yapıdan daha iyidir.Ama disconnected yapı connected yapıya göre daha eski bilgiyi getirir,veritabanı üzerindeki değişiklikler direk veritabanına yansımadığı için en güncel veriye ulaşamıyor.Databasede yapılan değişikler biz istediğimiz zaman veritababnına yansır.
DERYA GÜNDÜZ
deryagunduz.blogspot.com


One Response to “ADO.NET’TE CONNECTED DİSCONNECTED MİMARİLER”
tabi burada Disconnected Mimari de dikkat edilmesi gerek bir durum var , eğer 100 tane yada 1000 tane veri ile uğraşıyorsanız ve çalıştığınız bilgisayarın özellikleri yüksek ise sorun olmaya bilir. Ama üzerinde çalışacağınız veri sayısı fazla ise SqlDataAdapter ile getireceğiniz veri sayısı , bu uygulamanızın çakılmasına sebep olabilir çünkü DataTable ve DataSet yapıları direk geçici bellek üzerinden işlem yürüttükleri için bellekte şişme nedeni ile uygulama çakılmaları gözlenebilir.
By admin on Ağu 31, 2010