Ado.Net'e Giriş
ADO.NET Microsoft tarafından geliştirilen ve bir veri kaynağı ile iletişimi sağlayan bir kütüphanedir. ADO.NET, veri erişimi ile veri işlemeyi temiz bir yapıda, ayrı ya da birlikte kullanılabilecek ayrık bileşenler halinde sunmaktadır. ADO.NET, bir veritabanına bağlanmak, komutları işletmek ve sonuçları almak için .NET veri sağlayıcılarını içermektedir. Bu sonuçlar doğrudan işlenir, yada dataset nesnesi tarafından. ADO.NET, XML ve ADO.NET'in .NET Framework içinde en uygun şekilde programlama ortamı oluşturmamızı sağlar.
ADO.NET, veriyi kaynağından memory'e yerel bir kopyasını aktarmak için XML formatının kullanır. ADO.NET programlama modeli, uygulamalarımızın Web üzerinden de çalışabilmesi için sistem kaynaklarını da korumaktadır.
Ado.Net Nesne Modeli
ADO.NET nesne modeli DataSet Sınıfları ve .NET Veri Sağlayıcı Sınıfları olmak üzere ikiye ayrılır. DataSet sınıflarını kullanarak, çevrimdışı bir ortamda verileri tutarız. .NET veri sağlayıcı sınıfları, veri kaynağına özel olarak çalışırlar. Yani hangi veri kaynağı kullanılacaksa, sadece ona uygun veri sağlayıcı sınıfı kullanılmalıdır. Bu sınıflar sayesinde istediğimiz türden veri kaynağına kolayca bağlantı kurabilir, veri çekebilir ve gerekli güncellemeleri yapabiliriz.
ADO.NET nesne modeli, aşağıdaki veri sağlayıcı sınıflarını içerir ;
• SQL Server .NET Veri Sağlayıcısı
• OLE DB .NET Veri Sağlayıcısı
• Diğer .NET Veri Sağlayıcıları
Ado.Net Veri Sağlayıcıları
.NET veri sağlayıcıları, ADO.NET mimarisinin veri kaynağı, birleşen, bir XML web servisi veya bir uygulama arasında bağlantı kurabilmemiz için her türlü alt yapıyı bulunduran çekirdek bir bileşendir.
• System.Data.SqlClient isimalanını ekleyerek SQL veri tabanlarına bağlantı kurabiliriz.
• System.Data.OracleClient isimalanını ekleyerek ORACLE veri tabanlarına bağlantı kurabiliriz. (projenize System.Data.OracleClient.dll isimli sınıf referansını ekleyin)
• System.Data.OracleClient.dll isimli sınıf referansını ekleyerek accces ve diğer veri tabanlarına bağlantı kurabiliriz.
Veri sağlayıcıları;
• Connection
• Command
• DataReader
• DataAdapter
Connection Nesneleri
Connection nesneleri veritabanlarıyla konuşabilmek için kullanılır. Belirli bir veri kaynağına erişmeyi sağlayan DataSource, UserID ve Password gibi özelliklere sahiptir. Komutlar bağlantılar üzerinden iletilmektedirler ve sonuçlar da DataReader’lar tarafından okunabilen, ya da DataSet nesneleri içine yerleştirilebilen akımlar (stream) halinde döndürülmektedir. ADO.NET içerisinde,
• SQLConnection
• OleDbConnection
• OracleConnection
olmak üzere üç çeşit Connection nesnesi vardır.
Command Nesneleri
Command nesneleri, bir veritabanına gönderilecek olan bilgiyi içerir. Bir komut (command), bir stored procedure çağrımı, bir günleme cümleciği ya da sonuçları döndüren bir cümlecik olabilir. Aynı zamanda, girdi-çıktı parametreleri ve dönüş değerleri de kullanılabilmektedir. ADO.NET içinde,
• SQLCommand
• OleDbCommand
• Oracle Command
olmak üzere üç adet command nesnesi bulunmaktadır.
DataReader Nesneleri
Bir DataReader, veri üstünde salt-okunur ve sadece ileri yönlü bir bakış olarak tanımlanabilir. DataReader, recordset’ler üzerinde basit bir dolaşım yöntemi sağlar. Burada amaç verilerin okunmasıdır.i
ADO.NET,
• SQLDataReader
• OleDbDataReader
• Oracle DataReader
olmak üzere iki çeşit DataReader nesnesi içerir.
Bir DataReader içine veri transfer edebilmek için OleDbCommand, • Oracle Command ve SQLCommand nesnelerinin Execute metodu kullanılabilir.