Ii. Gözden Geçirme 1. Recordset nedir? 2. Bir recordset nasıl yaratılır? 3. Bir recordset'e ekleme yapmak için hangi metot kullanılır? 4. ADO nesneleri nelerdir?

I. Ado Veri Erişim Yöntemi Visual Basic uygulamalarına baktığınızda çoğunun veritabanı uygulaması olduğunu görürsünüz. Bu nedenle Visual Basic 6.0 ile veritabanı uygulaması geliştirmek için çok sayıda yenilikler yapılmıştır. Bu yeniliklerin başında yeni veri erişim yöntemi ADO gelir. NOT: ADO ve Visual Basic Microsoft firmasının tescilli markasıdır.

A. Ado'yu Kullanmak ADO nesnelerini kullanmadan önce diğer bir deyişle programınızda ADO kullanarak veritabanı işlemlerini yapmadan önce ADO nesnelerini ve referanslarını Visual Basic ortamına eklemeniz gerekir. 1. Project menüsünden References komutu kullanılır. 2. Microsoft ActiveX Data Objects 2.0 ya da daha ilerisi seçilir. İPUCU: ADO versiyonları ve Visual Basic Service Pack'leri konusunda daha geniş bir araştırma yapınız. www.microsoft.com. Örneğin formlarınızdaki metin kutularını ya da gridleri veritabanına bağlamak için ADODC bileşenin eklenmesi gerekir. Bu durumda ortama ADO kontrollerini de eklemeniz gerekir. 1. Project menüsünden Components komutu kullanılır. 2. Microsoft DataGrid Control 6.0 seçilir. Ayrıca Microsoft ADO Data Control 6.0'ında eklenmiş olması gerekir. 3. OK düğmesine tıklanarak kontrol projeye eklenmiş olur. Ardından ADO DC üzerinde sağ tıklayarak elde ettiğiniz iletişim kutusunda veritabanı erişiminin birçok işlemini yapabilirsiniz. Geriye bir tek şey kalır o da verileri görüntüleyecek olan DataGrid'in DataSource özelliğini ADODC olarak düzenlemek. 1. FORM ÜZERİNDEKİ KONTROLLERİ ADO DATA CONTROL'E BAĞLAMAK ADO Control aracılığıyla veri kaynağı ile bağlantı kurulduktan sonra TextBox ComboBox ListBox Grid gibi kontrollerle birlikte kullanılabilir. NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için www.farukcubukcu.com adresine bakınız. Bir kontrolün tasarım zamanında ADODC'e bağlanması için DataSource özelliğinin düzenlenmesi gerekir. Yine aynı şekilde bu işlemler çalışma zamanında da yapılabilir. Kullanılan kontrole göre kullanılan özellikler değişir. Örneğin bir TextBox kontrolünü ADODC ile ilişkilendirerek veri alışverişi yapmasını istersek DataField özelliği kullanılır: Text1. DataField = "ADI " Set Text1. DataSource = ADODC1 Aşağıdaki örnekte DataGrid kontrolü ile Access veritabanındaki veriler bir gride bağlanır. Bu işlem için: 1. Project menüsünden Components komutu kullanılır. 2. Microsoft DataGrid Control 6.0 seçilir. Ayrıca Microsoft ADO Data Control 6.0'ında eklenmiş olması gerekir. 3. OK düğmesine tıklanarak kontrol projeye eklenmiş olur. Private Sub Command1_Click ADODC1. ConnectionString ="Provider=Microsoft. Jet. OLEDB.3.51; Data Source=c:\my documents\adresler. mdb" ADODC1. CommandType = adCmdTable ADODC1. RecordSource = "ogrenciler" Set DataGrid1. DataSource = ADODC1 End Sub

B. Ado Nesneleri ADO veri erişim sistemi oldukça basit bir nesne modeline sahiptir. Bu modelde birçok nesne seçimli olarak ya da bağımsız olarak kullanılabilir. Tablo: ADO modelinde yer alan nesneler Nesne Amacı Command Bir veri kaynağı üzerinde bir query ya da deyimi işletir. Connection Bir veri kaynağına doğrudan bağlantı yaratır. Error Veri kaynağından bir hatayı döndürür. Field Bir kayıt içindeki bir alan . Parameter Bir komut için parametre tutar. Recordset Bir komut tarafından üretilen verileri içerir. Örneğin bir Access veritabanına bağlantı kurmak için şu nesneler kullanılır: Veri: ADRESLER. MDB Connection: MUSTERI. MDB Command: Select from musteriler Recordset: elde edilen bilgi. Aşağıdaki örnekte sadece Recordset nesnesi ile bir Microsoft Access veritabanına erişilmektedir: Dim rst As New ADODB. Recordset rst. Open "Select From musteriler" "DSN=MUSTERI" adOpenKeyset Set DataGrid1. DataSource = rst NOT: Yukarıdaki kodda yer alan DSN tanımlaması işletim sistemi tarafından yaratılabilir. Control Panel'de ODBC tanımlamalarına bakınız. 1. Recordset Nesnesinin Kullanımı Aşağıdaki örnekte bir Recordset nesnesi ile Access veritabanındaki veriler DataGrid üzerinde gösterilmektedir: Dim rst As New ADODB. Recordset rst. Open "Select From musteriler" "DSN=MUSTERI" adOpenKeyset Set DataGrid1. DataSource = rst 2. Connection Nesnesi Connection nesnesi bir veri kaynağına bağlantı kurmak için kullanılır. Connection nesnesi sayesinde bir data provider aracılığıyla bir komut işletilir. Connection nesnesi ile ConnectionString özelliği kullanılır. Bu özellik bağlanılacak veri kaynağını gösterir. Open metodu ise bağlantıyı açmak için kullanılır. Dim cnn As New ADODB. Connection cnn. Open "MUSTERI" 3. Command Nesnesi Command nesnesi bir bağlantı üzerinde işletilecek özel bir query ya da komut yaratmak için kullanılır. Command nesnesinin ana amacı stored procedure'ların ve parametreli komutların çalıştırılmasını sağlamaktır. Bir komut nesnesi bir bağlantı üzerinde bağımsız olarak yaratılır ve işletilmeden önce veri kaynağına bağlı olan aktif connection ile ilişkilendirilir. Bir komut herhangi bir recordset döndürmeden de kullanılabilir. Örneğin aşağıdaki program parçasında bir UPDATE komutu veritabanı üzerinde işletilmektedir. strSQL = "UPDATE BORCU SET BORCU = BORCU 1.15" cmd. Execute 4. Recordset Nesnesi Recordset nesnesi ADO içinde en çok kullanılan nesnedir. Recordset nesnesi veri kaynağından gelen verileri içerir. Bir komut ya da query çalıştırıldığında elde edilen kayıtları recordset nesnesi içerir. Recordset nesneleri genellikle aktif connection ve command ile oluşturulur. Bunun dışında Recordset nesneleri bağımsız olarak da kullanılabilir. Örnek: Recordset tanımlaması Dim rst As New ADODB. Recordset rst. Open "Select From Ogrenciler" "DSN=ADRESLER" adOpenKeyset adLockOptimistic Örnek: Bir recordset'in DataGrid üzerinde gösterilmesi Dim con As New ADODB. Connection Dim rst As New ADODB. Recordset Con. Open="Provider=Microsoft. Jet. OLEDB.4.0 ; Data Source=c:\data\sirket. mdb" Rs. Open "SELECT FROM musteriler" Con Set DataGrid1. DataSource = rs NOT: DSN tanımlı olan bağlantılar için bilgisayarda Control Panel üzerinde ODBC bağlantısını tanımlanmalıdır.

Ders sonunda yapabilecekleriniz: -Veritabanı kullanım açıklamak. -ADO veri erişim yöntemini açıklamak. -Veritabanına yazmak ve okumak. -SQL Server ve Access veritabanlarına erişim.