Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Görsel Programlama II Ders 1 Öğr.Gör. Mustafa KARABULUT.

Benzer bir sunumlar


... konulu sunumlar: "Görsel Programlama II Ders 1 Öğr.Gör. Mustafa KARABULUT."— Sunum transkripti:

1 Görsel Programlama II Ders 1 Öğr.Gör. Mustafa KARABULUT

2 Konular ADO.NET ADO.NET Veri Erişim Modelleri ◦ Ba ğ lantılı (Connected) model ◦ Ba ğ lantısız (Disconnected) model ADO.NET Sınıfları Örnek uygulama

3 ADO.NET ActiveX Data Objects (ActiveX Veri Nesneleri) Microsoft’un veri erişim teknolojisidir Tüm.NET dilleri (Visual Basic.NET, C# ve di ğ erleri) için ortak bir teknolojidir Visual Studio kurulumu ile Sql Server, Oracle ve Access veritabanları erişim için gereken eklentiler kurulu gelmektedir. Di ğ er veritabanları için, ör: MySQL, veritabanına özel sürücü kurularak onlara da ba ğ lantı yapılabilir

4 ADO.NET veri erişim modelleri Ba ğ lantılı (Connected) model ◦ Tek yönlü okuma veya yazma işlemi ◦ Veriler güncel ◦ Veritabanı ba ğ lantısı sürekli açık ◦ A ğ trafi ğ i yo ğ un Ba ğ lantısız (Disconnected) model ◦ Çift yönlü okuma ve yazma ◦ Veriler yerel olarak kaydedilir ve güncel de ğ ildir ◦ Veritabanı ba ğ lantısı sürekli açık de ğ ildir ◦ A ğ trafi ğ i nisbeten azdır

5 ADO.NET veri erişim modelleri

6 ADO.NET sınıfları Kullanılacak veritabanı türüne göre XXX yerine Sql, OleDb, Oracle veya Odbc ön ekleri kullanılmaktadır. Örne ğ in Sql Server için ba ğ lantı nesnesi SqlConnection olmaktadır. Veritabanı türüBa ğ lantı nesnesi Sql Server 2000, 2005 veya 2008 SqlConnection OracleOracleConnection Odbc veri kayna ğ ıOdbcConnection Access ve di ğ er veritabanlarıOleDbConnection

7 ADO.NET Sınıfları Di ğ er bazı sınıflar Sınıf adıSql ServerOracleAccess v.b. XxxConnectionSqlConnectionOracleConnectionOleDbConnection XxxCommandSqlCommandOracleCommandOleDbCommand XxxDataAdapterSqlDataAdapterOracleDataAdapterOleDbDataAdapter XxxDataReaderSqlDataReaderOracleDataReaderOleDbDataReader DataSet

8 ADO.NET sınıfları Bu sınıfları kullanmak için kodumuza belli kütüphaneleri using ifadesi ile eklememiz gerekmektedir. Örne ğ in SqlConnection, SqlCommand gibi Sql Server’a özel sınıfları kullanmak için kodumuza aşa ğ ıdaki ifade eklenmelidir ◦ using System.Data.SqlClient;

9 ADO.NET sınıfları Di ğ er veritabanları için gerekli using ifadeleri: Veritabanı türüusing ifadesi Sql Server 2000, 2005, 2008System.Data.SqlClient OracleSystem.Data.OracleClient OdbcSystem.Data.OdbcClient Access ve di ğ erleriSystem.Data.OleDbClient

10 ADO.NET sınıfları Ba ğ lantılı veri erişiminde kullanılan sınıflar ve kullanım amaçları SınıfAmaç SqlConnectionVeritabanına ba ğ lantı kurar, di ğ er nesneler bu nesne üzerinden sorgulama yaparlar SqlCommandVeritabanı üzerinde sorgu (SELECT, DELETE, INSERT v.b.) çalıştırılmasını sa ğ lar. SqlDataReaderSqlCommand ile çalıştırılan bir SELECT sorgusunun sonucunu satır satır okumaya yarar

11 ADO.NET sınıfları Ba ğ lantısız veri erişiminde kullanılan sınıflar ve kullanım amaçları SınıfAmaç SqlConnectionBa ğ lantılı kullanımla aynıdır, ortak bir sınıftır. SqlDataAdapterVeritabanından kayıtları çekmek, çekilen kayıtlarda yapılan de ğ işiklikleri de tekrar veritabanına kaydetmek için kullanılır. DataSetVeritabanından çekilen kayıtların depolanması ve yönetilmesi amacıyla kullanılır. Tüm veritabanı türleri için bu sınıf ortaktır.

12 ADO.NET sınıfları Herhangi bir ADO.NET sınıfı kullanılırken önce new operatörü ile oluşturulur. ◦ SqlConnection c = new SqlConnection(); Oluşturulan de ğ işken üzerinden nesnenin özellikleri de ğ iştirilir veya metotları ça ğ rılır ◦ c.ConnectionString ……… “; ◦ c.Open( ); ◦ c.Close( );

13 ADO.NET sınıfları Örnek bir SqlCommand kullanımı ◦ SqlCommand cmd = new SqlCommand( ); ◦ cmd.Connection = c; ◦ cmd.CommandText = “DELETE FROM musteriler”; ◦ cmd.ExecuteNonQuery( ); Bu kod parçası kurulan “c” ba ğ lantısı üzerinden musteriler tablosundaki kayıtları silmektedir.

14 ADO.NET sınıfları SqlCommand nesnesinde kullanılan özellik ve metotların amaçları Özellik/MetotAmaç cmd.ConnectionSorgulamanın hangi ba ğ lantı üzerinden yapılaca ğ ını belirler cmd.CommandTextHangi SQL sorgusunun çalışaca ğ ını belirler. Buraya geçerli bir SQL sorgusu (SELECT, DELETE, INSERT v.b.) yazılmalıdır. cmd.ExecuteNonQuery( )Yazılan, geriye sonuç döndürmeyen sorguyu çalıştırır. Yazılan sorgu SELECT dışında bir sorgu olmalıdır. cmd.ExecuteScalar( )SELECT sorgusu sonucu geriye dönen ilk de ğ eri almak için kullanılır cmd.ExecuteReader( )SELECT sorgusu sonucu geriye dönen satırları SqlDataReader ile satır satır okumak için kullanılır

15 Örnek bir uygulama Veritabanındaki en son sipariş tarihini textBox içine yazdıran program. Bunun için ticaret.mdf ve ticaret_log.mdf Sql server dosyalarının indirilip, c:\vt\ konumuna konması gerekmektedir. Dosyalar hazırlandıktan sonra Visual C# Express Edition açılır ve yeni bir proje oluşturulur….

16 Örnek bir uygulama Yeni proje oluşturma yollarından birisi Start Page’deki Create seçene ğ ini kullanmaktır

17 Örnek uygulama Proje türü: “Windows Forms Application” Proje adı : “VtIlkDeneme”

18 Örnek bir uygulama Form üzerine bir TextBox kontrolü (textBox1) konuluyor… TextBox’ın Multiline özelli ğ i true Dock özelli ğ i Fill olarak seçiliyor

19 Örnek uygulama Form ekrana geldi ğ inde müşterilerin textbox1’e yüklenmiş olmasını istiyoruz Bunun için Form’un Load olayına kod yazaca ğ ız. Events(Olaylar) ekranından Load’a çift tıklayarak da aynı iş yapılabilir Load olayına kod yazmak için Form’un boş bir kısmına çift tıklanıp, kod ekranı açılmalıdır

20 Örnek uygulama

21 F5 tuşuna veya çalıştır tuşuna basarak program çalıştırılır


"Görsel Programlama II Ders 1 Öğr.Gör. Mustafa KARABULUT." indir ppt

Benzer bir sunumlar


Google Reklamları