Yaz
õ
l
õ
m
Profesyoneli 2
Software Professional 2
Yazan: Fulya SATAR – Engin ÖREN Editörler: Tamer ŞAHİNER – Tuncer KARAARSLAN
Yayõna Hazõrlayan: Selçuk TÜZEL Grafik Uygulama: Zeynep ÇÖMLEKÇİ
Kapak Tasarõmõ: Selim Şahin Baskõ: Lebib Yalkõn
Şef Editör: Mehmet ÇÖMLEKÇİ
1. Baskõ: 2005
Copyright © 2005, Bilge Adam
Kitabõn yayõn haklarõ Bilge Adam Bilgi Teknolojileri Akademisi’ne aittir. Firmadan yazõlõ izin almadan kõsmen veya tamamen alõntõ yapõlamaz, hiçbir
.NET yazõlõm teknolojisi ile yeni tanõşan ya da daha önceden .NET yazõlõm geliştirme araçlarõyla kõsa bir süre çalõşma imkanõ bulmuş okurlar için temel bir başvuru niteliğindeki bu yayõn ile windows ve web tabanlõ uygulamalar geliştirebileceksiniz. Veri tabanõ programlama ve web programlama konula-rõnda sizlerin çok iyi seviyelere gelmesine destek verecektir.
Eğitimcilerinizi yakõndan takip etmenizi sağlayacak bu yayõn ile bol bol örnek kod inceleme fõrsatõna sahip olacaksõnõz.
Yazõlõm profesyonelleri için hazõrlanan bu yayõnda emeği geçen tüm yazõlõm ekibindeki arkadaşlarõma teşekkür ederim. Yazarlõk katkõlarõndan dolayõ Fulya SATAR’a, bu yayõnõn hazõrlanmasõnda büyük emek ve fedakarlõklarõndan do-layõ özellikle Tamer ŞAHİNER’e ve yayõndaki büyük emeklerinden dolayõ Engin ÖREN’e teşekkür ederim. Ayrõca yayõnõn içeriğinin oluşmasõnda fikirlerini sü-rekli bizimle paylaşan yazõlõm ekibindeki eğitimcilerimize teşekkürler.
Modül 1: Geliştirme Ortamõnõ Tanõmak ...3
Konu 1: Visual Basic .NET ile Proje Oluşturmak ... 4
Proje Şablonu Seçmek ...5
Proje Dosyalarõna Genel Bakõş...7
Assembly Nedir?...9
Projeye Referans Eklemek ... 10
İsim Alanõ (Namespace) Nedir? ... 12
Yeni İsim Alanõ Eklemek ... 13
Projeye İsim Alanõ Dahil Etmek... 15
Proje Özelliklerini Ayarlamak... 17
Konu 2 : Proje Bileşenlerini Tanõmak ... 19
Solution Explorer Kullanmak... 20
Object Browser Kullanmak... 21
Server Explorer Kullanmak... 22
Dinamik Yardõm Almak... 23
Görev Listesini Kullanmak... 24
Konu 3: Uygulamalarda Hata Ayõklama ... 25
BreakPoint ... 26
Debug Panelleri ... 27
Command Panelini Kullanmak... 28
Konu 4: Uygulamanõn Derlenmesi... 29
Derleme Seçeneklerine Bakõş... 30
Modül Özeti ... 31
LAB 1: Geliştirme Ortamõnõ Tanõmak... 32
Uygulama 1: Windows Uygulamasõ Oluşturmak ... 32
Çağrõ Merkezi Uygulamasõnõ Oluşturmak ... 32
Uygulama 2: Object Browser Kullanmak ... 33
System.Data Kütüphanesini Açmak ... 33
Uygulama 3: Debug Aracõnõ Kullanma... 33
Kodlarõn Yazõlmasõ... 33
Modül 2: Veri Merkezli Uygulamalar ve ADO.NET’e Giriş. 37
Konu 1: Veri Merkezli Uygulamalar ... 38
Veri Depolama... 39
Bağlantõlõ (Connected) Veri Ortamlarõ... 40
Bağlantõsõz (Disconnected) Veri Ortamlarõ... 41
Veri Erişim Yöntemleri... 43
Konu 2: ADO.NET’e Giriş... 46
ADO.NET Nedir? ... 47
ADO.NET Nesne Modeli ... 48
ADO.NET Veri Sağlayõcõlarõ... 49
Modül Özeti ... 53
Lab 2: Veri Merkezli Uygulamalar ve ADO.NET’e Giriş... 54
Uygulama 1: Yeni bağlantõ oluşturmak... 54
Çağrõ Merkezi Uygulamasõ İçin Yeni Bağlantõ Oluşturmak... 54
Modül 3: Veri Kaynaklarõna Bağlanmak... 59
Konu 1: Veri Sağlayõcõ Seçmek... 60
Veri Sağlayõcõ Nedir?... 61
Veri Sağlayõcõ Sõnõflarõ... 62
Konu 2: Bağlantõ Oluşturmak... 66
Bağlantõ Cümlesi (Connection String) Oluşturmak ... 67
Bağlantõ Cümlesini (Connection String) Kullanmak ... 69
Bağlantõ Cümlesi(Connection String) Örnekleri ... 71
Ms Access ile OLEDB Bağlantõ Cümleleri... 72
SQL Server ile ODBC Bağlantõ Cümleleri... 73
SQL Server ile OLEDB Bağlantõ Cümleleri... 74
SQL Server ile SQL Server Bağlantõ Cümleleri ... 75
Konu 3: Bağlantõ Yönetimi ... 76
Bağlantõyõ Açmak ve Kapatmak... 77
Bağlantõ Durumlarõnõ Kontrol Etmek... 80
Modül Özeti ... 82
Lab 1: Bağlantõ Oluşturmak ... 83
Kontrollerin Eklenmesi... 83
Modül 4: Bağlantõlõ (Connected) Veritabanõİşlemleri ...91
Konu 1: Bağlantõlõ Veri Ortamlarõyla Çalõşmak... 92
Bağlantõlõ Uygulamalar İçin Veritabanõ Mimarisi... 93
Konu 2: Command ile Çalõşmak... 95
Command Nedir?... 96
Command Oluşturmak ... 99
Parametre Kullanmak... 101
Konu 3: Command ile Geriye Değer Döndürmek ...105
Konu 4: Command ile Geriye Kayõt Döndürmek...107
DataReader Özellik ve Metotlarõ... 107
Konu 5: Command ile Kayõt Döndürmeyen Sorgular Çalõştõrmak ...113
Modül Özeti ...117
Lab 1: Veritabanõİşlemleri...118
Veritabanõnõn Oluşturulmasõ... 118
Kontrollerin Eklenmesi ... 119
Kodlarõn Yazõlmasõ... 119
ExecuteNonQuery Metodu ... 120
ExecuteReader ve DataReader... 121
Form Kontrolleri İşlemleri... 122
Yordamlarõn Formda Kullanõlmasõ... 123
Modül 5: Bağlantõsõz (Disconnected) Veritabanõ İşlemleri129 Konu 1: Disconnected Uygulamalar İçin Veritabanõ Mimarisi ...130
Konu 2: DataSet ve DataTable Oluşturmak...132
DataSet Nesne Modeli... 133
Konu 3 : DataAdapter ile Kayõtlarõ Dataset’e Doldurmak...137
Konu4: DataSet Nesnesini Kontrollere Bağlamak...139
DataSet İçindeki Veriyi Windows Kontrollerine Bağlamak... 140
DataSet İçindeki Veriyi DataGrid’e Bağlamak ... 142
Konu : 5 DataTable Üzerindeki Veriyi Düzenlemek...143
Lab 1: Bağlantõsõz Veritabanõİşlemleri ...148
Veritabanõnõn Oluşturulmasõ...148
Kontrollerin Eklenmesi ...149
Bağlantõ Cümlesinin Oluşturulmasõ...150
Bağlantõnõn Oluşturulmasõ...150
DataAdapter Nesnesinin Oluşturulmasõ...151
DataSet Nesnesinin Oluşturulmasõ...151
DataSet İçindeki Verinin DataGrid Kontrolüne Bağlanmasõ...151
DataSet İçindeki Verinin TextBox Kontrollerine Bağlanmasõ...152
Kodlarõn Yazõlmasõ...152
Konu 6: Veri Arama ve Sõralama...154
DataView Özellik ve Metotlarõ...157
Modül Özeti ...159
Lab 2: Çoklu Tablolarla Çalõşmak...160
Veritabanõnõn Projeye Eklenmesi ...161
Kontrollerin Eklenmesi ...161
Bağlantõ Cümlesinin Oluşturulmasõ...161
Bağlantõnõn Oluşturulmasõ...162
DataAdapter Nesnesinin Oluşturulmasõ...162
DataSet Nesnesinin Oluşturulmasõ...164
DataView Nesnesinin Oluşturulmasõ...164
DataSet İçindeki Verinin ComboBox Kontrolüne Bağlanmasõ...165
Kodlarõn Yazõlmasõ...165
Modül 6: ASP.NET’e Giriş... 169
Konu 1: ASP.NET Nedir?...170
Konu 2: ASP Tarihçesi...171
Konu 3: ASP.NET Uygulama Mimarisi...172
İstemci Katmanõ (Presentation Tier) ...172
İş katmanõ (Business Logic Tier)...172
Veri Katmanõ (Data Tier) ...172
Konu 4: ASP.NET Çalõşma Modeli...173
Tür Yönetimi (Type Management) ...174
JIT Derleme (JIT Compilation) ...175
Hafõza Yönetimi (Memory Management) ...176
Konu 5: ASP.NET’in .NET Çatõsõndaki Yeri...180
Konu 6: .NET Framework’ün ASP.NET’teki Avantajlarõ...181
Konu 7: ASP.NET ile Uygulama Geliştirmek...182
IIS Nedir? ... 183
IIS Kurulumu ve Yönetimi ... 184
IIS Kurulumu... 185
IIS Yönetimi... 187
.NET Framework Kurulumu ... 190
Modül Özeti ...191
Lab 1: Web Tabanlõ Uygulamalarõn Yayõnlanmasõ...192
IIS (Internet Information Services) Kurulmasõ... 192
Uygulama Yayõnlamak ... 192
Modül 7: ASP.NET Web Form ve Kontrolleri ile Çalõşmak197 Konu 1: Web Form Bileşenleri ...198
Page Özelliği... 200
Body Özelliği ... 202
Form Özelliği... 203
Konu 2: Server (Sunucu) Kontroller...204
Konu 3: Kontrollerin Sõnõflandõrõlmasõ...205
Standart Kontroller... 205
Doğrulama Kontrolleri ... 206
Zengin Kontroller... 206
İlişkisel Liste Tabanlõ Kontroller... 206
Konu 4: Standart Kontroller...207
Label... 207 TextBox... 207 Button ... 207 CheckBox ... 208 RadioButton ... 209 HyperLink... 210 Image... 210 ImageButton... 210 LinkButton... 211 DropDownList ... 212 ListBox... 213
Panel...214
Table...214
Konu 5: Doğrulama(Validation) Kontrolleri...216
RequiredFieldValidator ...217 CompareValidator ...217 RangeValidator...218 RegularExpressionValidator...219 CustomValidator ...220 ValidationSummary...222
Konu 6: Zengin Kontroller...223
AdRotator ...223
Calendar ...224
Konu 7: AutoPostBack Özelliği...226
Konu 8: ViewState ...228
Modül Özeti ...229
Lab 1: E-Ticaret Uygulamasõ Geliştirmek ...230
Veritabanõnõn Projeye Eklenmesi...230
Web Formlarõn Eklenmesi ...231
UyeKayit Formunun Eklenmesi...231
UyeGiris Formunun Eklenmesi ...236
Giris Formunun Eklenmesi ...238
Kayit Formunun Eklenmesi ...240
Satis Formunun Eklenmesi ...242
Modül 8: ASP.NET ile Kod Geliştirmek ... 247
Konu 1: Kod Yazmak ...248
Inline Kod Yazmak ...249
Code-Behind Kod Yazmak ...250
Konu 2: Client Side (İstemci Taraflõ) Olay Prosedürleri ...252
Konu 3: Server Side (Sunucu Taraflõ) Olay Prosedürleri ...253
Olay Prosedürleri Oluşturmak ...254
Olay Prosedürlerinde Kontrollerle Etkileşim ...255
Konu 4: Sayfa Yaşam Döngüsü...256
Response.Redirect...257
Page.IsPostback... 259
Modül Özeti ...260
Lab 1: ASP.Net ile Kod Geliştirmek...261
Web Uygulamasõ Oluşturmak... 261
Web Form Eklenmesi ... 261
Kodlarõn Yazõlmasõ... 262
Modül 9: Web Programlamaya Giriş... 267
Konu 1 : Web Programlamaya Giriş...268
Konu 2: HTML...269
HTML Yapõsõ... 269
Tag ... 270
Attribute ... 271
Value... 272
HTML Belgesi Nasõl Oluşturulur?... 273
En Sõk Kullanõlan Etiketler... 274
Başlõklar... 274
Paragraf ve Satõr Sonu ... 274
Sayfalara Bağlantõ Vermek... 275
Listeler ... 275
Resim Görüntüleme... 276
Tablolar... 276
Konu 3: Script Nedir? ...278
JavaScript... 279
Değişkenler ... 281
Operatörler... 282
Klavyeden Bilgi Almak ve Ekrana Çõktõ Vermek ... 284
Koşul ve Döngü Yapõlarõ... 284 Fonksiyonlar... 286 JavaScript Nesneleri ... 286 Olaylar... 288 VbScript ... 291 Konu 4: CSS...294 İç (Inline)... 294 Gömülü (Embedded)... 294 Bağlantõlõ (Linked)... 295
Style Sheet’lerin Söz Dizimi ... 296
Linkler ve CSS ...298
Sõnõf ve Gruplama...299
Modül Özeti ...300
Lab 1: Web Programlamaya Giriş...301
Web Uygulamasõ Oluşturmak ...301
Sanal Klavye Oluşturmak...301
Kodlarõn Yazõlmasõ...304
Popup Pencere Oluşturmak...306
Kodlarõn Yazõlmasõ...307
Modül 10: Kullanõcõ Kontrolleri Oluşturmak ... 311
Konu 1: Kullanõcõ Kontrolleri ...312
Kullanõcõ Kontrolünün Avantajlarõ...312
Kullanõcõ Kontrolünü Projeye Eklemek ...313
Modül Özeti ...317
Lab 1: E-Ticaret Uygulamasõ Geliştirmek ...318
Kullanõcõ Kontrollerin Eklenmesi ...318
Ust Kontrolünün Eklenmesi ...318
Alt Kontrolünün Eklenmesi...320
Yan Kontrolünün Eklenmesi...321
DataSet Nesnesinin Oluşturulmasõ...322
Bağlantõ Oluşturulmasõ...322
Kategori Kontrolünün Eklenmesi...322
Modül 11: ADO.NET ile Veriye Erişim ... 327
Konu 1: Veri Bağlantõlõ Kontroller ...328
CheckBoxList ve RadioButtonList Kullanõmõ...329
Repeater, DataList ve DataGrid Kullanõmõ...331
Repeater ...332
DataList ...335
DataGrid ...338
DataGrid Kontrolünde Kolon Oluşturmak...340
DataGrid Kontrolünde Sõralama ve Sayfalama...349
PlaceHolder Kullanõmõ...351
Konu 2: Connected ve Disconnected Uygulamalar Geliştirmek ...353
Modül Özeti ...356
Lab 1: E-Ticaret Uygulamasõ Geliştirmek...357
Connect Veritabanõ İşlemleri ... 357
UyeKayit Formu ile Veritabanõ İşlemlerinin Yapõlmasõ... 357
UyeGiris Formu ile Veritabanõ İşlemlerinin Yapõlmasõ... 358
KitapDetay Formunun Eklenmesi ve Veritabanõ İşlemlerinin Yapõlmasõ... 360
Disconnect Veritabanõ İşlemleri... 365
Default Formunun Eklenmesi ve Veritabanõ İşlemlerinin Yapõlmasõ... 365
DataSet İçine DataTable Eklenmesi ... 367
Kitap Formunun Eklenmesi ve Veritabanõ İşlemlerinin Yapõlmasõ... 368
DataSet İçine DataTable Eklenmesi ... 371
Modül 12: ASP.NET ile Durum Yönetimi ... 375
Durum Yönetimi ... 376
Konu 1: Session ...378
Session Değişkenine İlk Değer Vermek ... 380
Konu 2: Cookie...381
Cookie Türleri ... 382
Konu 3: Application ...385
Application Değişkenine İlk Değer Vermek... 386
Konu 4: Global.asax...388
Modül Özeti ...390
Lab 1: E-Ticaret Uygulamasõ Geliştirmek...391
Session Kullanmak ... 391
UyeGiris Formu İçinde Session Kullanmak... 391
KitapDetay Formu İçinde Session Kullanmak ... 393
Tanõmak
Bu modülde, Visual Studio .NET ortamõ ile tanõşacak ve bu ortam içinde kullanõlan temel proje bileşenleri hakkõnda genel bilgiler edineceksiniz. Ayrõca çalõşma zamanõ hatalarõnõ yakalamayõ ve uygulamayõ derlemeyi öğ reneceksi-niz.
Bu modül tamamlandõktan sonra;
! Proje oluşturabilecek,
! Projeye referans ekleyebilecek,
! Projeye isim alanõ ekleyebilecek,
! Proje özelliklerini değiştirebilecek,
! Dinamik yardõm alabilecek,
! Proje içine görevler ekleyebilecek
! Çalõşma zamanõ hatalarõnõ yakalayabilecek,
Konu 1: Visual Basic .NET ile Proje
Olu
ş
turmak
Visual Studio ortamõ, Visual Basic .NET projelerini kolay bir şekilde oluşturma imkanõ sağlar. Projenin çalõşmasõ için gereken dosyalarõ otomatik olarak ekler. Projenin geliştirilme aşamasõnda yeni bileşenlerin eklenmesi, menü ve araç çu-buklarõ ile kolay bir şekilde gerçekleştirilir.
Proje
Ş
ablonu Seçmek
Visual Basic .NET ile Windows tabanlõ ve Web tabanlõ gibi çeşitli projeler geliştirilebilir. Bu projeler farklõ platformlarda çalõşacağõ veya farklõ amaçlara yönelik oluşturulacağõ için, başlangõç bileşenleri farklõlõk gösterir. Örneğin, Win-dows tabanlõ projeler için WinWin-dows formlarõnõn kullanõlmasõ ve bazõ referansla-rõn eklenmesi gerekir. Visual Studio ortamõnõn sağladõğõ şablonlar, proje dosyalarõnõn başlangõç kodlarõnõ otomatik olarak yazõp gerekli referanslarõ ekleyerek geliştiriciye hõzlõ bir başlangõç sağlar.
! Windows Application: Windows tabanlõ uygulamalar geliştirmek için
kullanõlõr.
! Class Library: Diğer projeler için class kütüphaneleri sağlayan DLL
(Dynamic Link Library) oluşturmak için kullanõlõr. Bu bileşenler projelere Reference olarak eklenerek tekrar kullanõlõr.
! Windows Control Library: Kullanõcõ tanõmlõ Windows kontrolleri
oluşturmak için kullanõlõr. Bu kontroller Windows uygulamalarõnda, bir-çok formda tekrar kullanõlmak üzere tasarlanõr.
! Smart Device Application: Mobil cihazlar üzerinde uygulama geliş
tir-mek için kullanõlõr.
! ASP.NET Web Application: IIS (Internet Information Services)
üze-rinde çalõşacak Web uygulamalarõ geliştirmek için kullanõlõr.
! ASP.NET Web Service: Web uygulamalarõna XML Web Service
sağlayan projeler geliştirmek için kullanõlõr. Oluşturulan bu projeler,
di-ğer uygulamalara Web Reference olarak eklenir.
! Web Control Library: Web uygulamalarõnda, kullanõcõ tanõmlõ
! Console Application: Komut penceresinde çalõşacak konsol uygulamalarõ geliştirmek için kullanõlõr.
! Windows Service: Windows altõnda sürekli çalõşan uygulamalar için
kullanõlõr. Bu uygulamalar, kullanõcõlarõn sisteme giriş yapmadõğõ durum-larda da çalõşmaya devam eder.
! Other Projects: Enterprise Applications (şirket uygulamalarõ),
Deploy-ment Projects (yükleme projeleri), Database Projects (veritabanõ proje-leri) gibi değişik şablonlardõr.
! Empty Project: Herhangi bir şablon uygulanmadan açõlan Windows
projelerdir. Başlangõç nesnesi ve referanslar eklenmez.
! Empty Web Project: Herhangi bir şablon uygulanmadan açõlan Web
projelerdir. Bu proje IIS üzerinde tanõmlanõr ancak form ve referans nesneleri eklenmez.
! Blank Solution: Başlangõç olarak bir proje açõlmaz. Boş bir solution
dosyasõ açõlõr. İstenen projeler, Add New Project komutu ile bu solution içine dahil edilir.
Visual Studio ile yeni bir proje birkaç adõmda oluşturulabilir.
1. File menüsünden New alt menüsünü işaretleyin ve Project komutunu seçin.
2. New Project penceresinde Visual Basic Projects tipini ve çalõşmak istediğiniz şablonunu seçin.
3. Name özelliğinde projeye vereceğiniz ismi yazõn.
4. Location özelliği projenin dosyalarõnõn bulunacağõ yeri belirler. Browse düğmesini tõklayarak Windows dizinine ulaşõn ve projenin yerini seçin. 5. More düğmesi tõklandõğõnda, solution dosyasõ için yeni bir isim
kullanõlmasõnõ ve ayrõ bir klasör açõlmasõnõ sağlayan panel görüntülenir. Solution için farklõ bir isim vermek için Create directory for Solution seçeneğini işaretleyin ve metin kutusuna solution için yeni bir isim ya-zõn.
6. OK düğmesi tõklandõğõnda proje açõlõr. Solution için ayrõ bir klasör seçil-memişse, proje dosyalarõ proje ismi ile oluşturulan klasör altõnda oluş tu-rulur.
Proje Dosyalar
õ
na Genel Bak
õş
Visual Basic .NET ile oluşturulan bir projenin çalõşmasõ için gereken bazõ dosyalar vardõr. Bu dosyalarõn birçoğu, projenin tipine göre farklõlõk gösterir. Yeni bir proje açõldõğõnda, projeye verilen isim ile bir klasör açõlõr ve proje dosyalarõ bu klasör altõna yerleştirilir.
! Solution Dosyalarõ (.sln, .suo). Visual Basic .NET projeleri bir solution
dosyasõ (.sln) altõnda oluşturulur. Solution dosyasõ farklõ projeleri bir arada tutar ve birden fazla projeyi içinde barõndõrõr. Visual Studio ile proje oluşturulurken solution dosyasõ otomatik olarak eklenir.
Solution User Option (.suo) dosyalarõ, kullanõcõnõn solution ile çalõş õr-ken yaptõğõ ayarlarõ tutar ve proje tekrar açõldõğõ zaman bu ayarlarõ geti-rir.
! Project Dosyalarõ (.vbproj, .vbproj.user). Bir projenin içinde bulunan
bileşenlerin, eklenen referanslarõn tutulduğu proje dosyasõdõr. Visual Basic projeleri .vbproj uzantõlõ dosya ile oluşturulur. Bu dosya aynõ za-manda, bir solution içinde farklõ dilde ve tipteki projeleri ayõrt etmek için kullanõlõr. Projeye özgü ayarlar ise .vbproj.user dosyasõnda tutulur.
! Yerel Proje Dosyalarõ (.vb). Form, class, module gibi bileşenlerin
tutul-duğu dosyalardõr. .vb uzantõlõ bir dosya içinde birden çok class ve module tutulabilir. Ancak projedeki her form için ayrõ bir .vb dosyasõ oluşturulur.
! Web Projeleri Dosyalarõ (.aspx, .asmx, .asax). Web uygulamalarõnda
oluşturulan dosyalar Web sunucusunda (ISS) tutulur. Bu dosyalar web formlarõ için .aspx, Web Service için .asmx, global sõnõfõ için .asax
Proje oluşturulduktan sonra yeni nesnelerin eklenmesi Project menüsü ile ya da Solution Explorer paneli kullanõlarak gerçekleştirilir. Project menüsünden yeni bir form, module, class, component ya da user control eklemek için ilgili menü komutu seçilebilir. Add New Item komutu ile farklõ tipte birçok dosya pro-jeye dahil edilebilir.
Assembly Nedir?
Visual Studio .NET ortamõnda geliştirilen uygulamalar derlendiğinde, .exe
veya .dll uzantõlõ dosyalar oluşur. .NET’in otomatik olarak oluşturduğu bu dosyalara assembly denir. Assembly içinde dosyaya ait başlõk, açõklama ve telif hakkõ gibi kritik bilgiler tutulur.
Visual Studio .NET içinde geliştirilen bir projeye, farklõ kişiler tarafõndan geliş tiril-miş assembly’ler eklenebilir. Özellikle gelişmiş projelerde assembly’ler ayrõ programcõlar tarafõndan yazõlarak ortak bir proje altõnda toplanabilir.
Projeye Referans Eklemek
Herhangi bir projenin içine bileşen kütüphanelerinin eklenmesi için kullanõlõr. Bu bileşen kütüphaneleri, .NET ve COM bileşenlerden oluşur.
Projeye referans eklemek için aşağõdaki adõmlarõ takip edin:
1. Solution Explorer penceresinden References menüsünü sağ tõklayõn. 2. Açõlan menüden Add Reference komutunu verin.
3. Açõlan pencere üzerinden .NET, COM, Projects sekmelerinden her-hangi birini seçin.
.NET, projeye NET bileşen kütüphanelerini eklemek için kullanõlõr. COM, projeye COM bileşen kütüphanelerini eklemek için kullanõlõr. Projects, proje ile aynõ solution içinde yer alan bileşen kütüphanelerini eklemek için kullanõlõr.
4. Eklenecek assembly nesnesini seçin ve Select düğmesini tõklayõn. Bir-den fazla assembly seçmek için aynõ işlemi tekrar edin.
5. Referans ekleme işlemini tamamlamak için OK düğmesini tõklayõn. Proje şablonlarõ içinde en çok kullanõlan referanslar şunlardõr:
! System: Programõn çalõşmasõ için gerekli en temel referanstõr.
System.dll kütüphanesi içinde tutulur.
! System.Data: Veritabanõ bağlantõlarõnõn yapõlmasõ için gerekli
referans-tõr. System.Data.dll kütüphanesi içinde tutulur.
! System.Drawing, System.Windows.Forms: Windows form ve
kontrollerini içeren referanstõr. System.Drawing.dll ve System. Windows.Forms.dll kütüphaneleri içinde tutulur.
! System.XML: XML teknolojisinin kullanõlmasõnõ sağlayan referanstõr.
İ
sim Alan
õ
(Namespace) Nedir?
.NET içindeki tüm kütüphaneler, .NET Framework ismi verilen ortak çatõ altõnda toplanõr. Bu çatõ altõndaki tüm kütüphaneler amaçlarõna göre namespace deni-len isim alanõ altõnda gruplandõrõlõr. Bu isim alanõ içinde sõnõflar, arayüzler ve modüller bulunur.
.NET içinde veritabanõ uygulamalarõ geliştirmek için System.Data.dll
kütüphanesine ihtiyaç duyulur. Bu kütüphane Visual Studio .NET içindeki tüm proje şablonlarõnda otomatik olarak yer alõr. System.Data.dll kütüphanesi içinde şu isim alanlarõ bulunur:
! System.Data ! System.Data.Common ! System.Data.SqlClient ! System.Data.OleDb ! System.Data.SqlTypes ! System.Xml
Yeni
İ
sim Alan
õ
Eklemek
Yeni isim alanõ oluşturmak için Namespace anahtar kelimesi kullanõlõr.
Namespace Isimalani_ismi ...
End Namespace
Örnekte NSBilgeAdam isminde bir isim alanõ tanõmlanmõştõr. Bu isim alanõ içine
Egitim isminde bir sõnõf eklenmiştir.
Namespace NSBilgeAdam
' BilgeAdam isim alanõnda kullanõlacak ' Sõnõf, Modul ve Arayüzler tanõmlanõr
Class Egitim '... End Class Class Ogrenci '... End Class ' vs... End Namespace
NSBilgeAdam isim alanõ içindeki Ogrenci sõnõfõnõ kullanmak için, sõnõf ismi, isim alanõ ile birlikte belirtilmelidir.
Dim yeniOgrenci As New bilgeadam.NSbilgeadam.Ogrenci()
Proje ile aynõ isimdeki bir isim alanõ .NET derleyicisi tarafõndan yeni oluşturulan tüm pro-jelere eklenir. Bu genel isim alanõna kök isim alanõ (root namespace) denir. Dolayõsõyla yeni oluşturulan isim alanlarõ, kök isim alanõ ile birlikte belirtilmelidir.
Herhangi bir isim alanõ içinde birden fazla isim alanõ tanõmlanabilir. Örnekte
NSBilgeAdam isim alanõ içinde Idari, Egitim ve Ogrenci adõnda üç ayrõ isim alanõ eklenmiştir.
Namespace NSBilgeAdam
' BilgeAdam isim alanõnda kullanõlacak ' Class, Module ve Interface’ler tanõmlanõr Namespace Idari Class Personel End Class End Namespace Namespace Egitim Class Grup End Class End Namespace Namespace Ogrenci Class Bilgi End Class End Namespace 'vs... End Namespace
Projeye
İ
sim Alan
õ
Dahil Etmek
Bir isim alanõ içinde yer alan sõnõflarõ tanõmlamak için, sõnõfõn bulunduğu kütüphanenin yolunu eksiksiz olarak belirtmek gerekir. Ancak bu şekilde kulla-nõmlar, kodun okunmasõnõ oldukça zorlaştõrõr. Örnekte sõnõflar bu yöntemle ta-nõmlanmõştõr.
Dim kisi1 As New bilgeadam.NSbilgeadam.Idari.Personel Dim OgrenciBilgi As New bilgeadam.NSbilgeadam.Ogrenci.Bilgi
Her sõnõf için kütüphane yolunun tekrarõnõ ortadan kaldõrmak için, Imports
anahtar sözcüğü kullanõlõr. Imports sözcüğü ile eklenen isim alanlarõnõn nesnelerine, proje içinden doğrudan erişilebilir.
Örnekte NSBilgeAdam isim alanõnõn projeye dahil edilmesi gösterilmektedir:
Imports bilgeadam.NSbilgeadam
NSBilgeAdam isim alanõnda bulunan bir sõnõfõ kullanmak için sadece ismini yaz-mak yeterli olur:
Dim ogrenciBilgi As New Ogrenci.Bilgi
İç içe isim alanlarõnõn kullanõmõnda, içteki isim alanõna kolayca erişmek için kõ-saltmalar kullanõlabilir. Örnekte, NSBilgeAdam isim alanõ içindeki Ogrenci isim alanõna erişim gösterilmektedir:
Imports ogr = bilgeadam.NSBilgeadam.Ogrenci
Inherits System.Windows.Forms.Form ' ...
Dim OgrBilgi As New ogr.Bilgi
Proje Özelliklerini Ayarlamak
Projenin genel davranõşlarõnõ ve konfigürasyon özelliklerini değiştirmek için Property Page penceresi kullanõlõr.
Proje özelliklerini değiştirmek için aşağõdaki adõmlarõ takip edin: 1. Proje ismini sağ tõklayõn.
2. Açõlan menüden Properties komutunu verin.
3. Açõlan Property Page penceresi üzerinde Common Properties (Genel Özellikler) ve Configuration Properties (Konfigürasyon Özellikleri) sekmelerinden herhangi birini seçin.
4. Genel Özellikler, projenin genel davranõşlarõnõ değiştirmek için kullanõlõr. 5. Konfigürasyon Özellikleri, hata ayõklama ve derleme seçeneklerinin
de-ğiştirilmesi için kullanõlõr.
6. Proje özelliğini değiştirdikten sonra OK düğmesini tõklayõn. En çok kullanõlan proje özellikleri şunlardõr:
! Assembly Name: Derlenen uygulamanõn .exe veya .dll uzantõlõ çõktõ dosyasõnõn adõnõ belirler.
! Root Namespace: Kök isim alanõnõ belirler. Varsayõlan durumda
proje-nin ismi gelir.
! Project Output Type: Derlenen uygulamanõn hangi tipte assembly
oluşturacağõnõ belirler. Bu tipler Windows, konsol uygulamalarõ ya da sõ-nõf kütüphaneleri (.dll) olabilir.
! Startup Object: Uygulamanõn hangi formdan veya modülden çalõş
Solution Explorer Kullanmak
Solution Explorer paneli, bir solution içindeki tüm dosyalarõ görüntüler. Solution içinde birden fazla proje bulunabildiği için, bu projeler sõralõ bir şekilde listelenir. Koyu renkle gösterilen proje, solution içinde ilk çalõştõrõlacak projedir.
Bu panel ile solution içine proje ekleme ve silme, projelere yeni nesne ekleme ve silme işlemleri gerçekleştirilir.
Panelin üst tarafõnda buluna araç çubuğu, dosyalar üzerinde bazõ işlemlerin gerçekleştirilmesi için kõsayollar sunar. Örneğin araç çubuğundan Show All Files komutu seçildiği zaman, projelerin bulunduğu klasördeki tüm dosyalar gösterilir. Solution Explorer panelinde beyaz renkle gösterilen nesneler projeye dahil edilmemiştir. Örneğin, proje klasöründe bulunan bir resim dosyasõnõ pro-jeye dahil etmek için, resmi sağ tõklayõp Include In Project komutu verilmelidir. Solution Explorer panelini görüntülemek için View menüsünden Solution Ex-plorer komutunu verin.
Object Browser Kullanmak
Object Browser, Visual Studio .NET içindeki kütüphane ve isim alanlarõnõ tüm alt öğeleriyle ile beraber hiyerarşik şekilde listeler.
Object Browser’õ görüntülemek için, View Penceresinden Object Browser
komutunu verin.
Object Browser pencerenin sol üst köşesinde Browse alanõ Selected Compo-nents seçeneği ile birlikte varsayõlan olarak görünür. Bu seçenek ile projeye da-hil edilen referanslar ve bu referanslarla ilişkili isim alanlarõ hiyerarşik bir şekilde listelenir.
Objects paneli içinden seçilen herhangi bir isim alanõ genişletilirse, içindeki tüm öğeler hiyerarşik şekilde listelenir. Bu öğelerin herhangi biri seçildiğinde, o öğeye ait tüm alt öğeler Members penceresinde listelenir.
Objects penceresinin sağ alt köşesinde ise, seçilen öğenin tanõmõnõ ve hangi isim alanõnõn altõnda olduğu gösterilir.
Server Explorer Kullanmak
Server Explorer, Visual Studio .NET ortamõ içinde veri sağlayõcõlarla çalõşmayõ kolaylaştõrmak için tasarlanmõş bir araçtõr. Ayrõca Server Explorer sunucu ma-kine bileşenlerinin yönetimi ve kullanõmõnõ sağlar.
Server Explorer, Data Connections ve Servers olmak üzere iki sekmeden
olu-şur. Veri sağlayõcõlarõ ile çalõşmak için Data Connections seçeneği kullanõlõr. Yeni bir veri sağlayõcõ oluşturmak için belirtilen adõmlarõ takip edin.
1. Server Explorer üzerinden Data Connections seçeneğini işaretleyin. 2. Data Connections seçeneğini sağ tõklayõn. Açõlan menüden Add
Connection komutunu verin.
3. Açõlan Data Link Properties penceresinden bağlantõ oluşturulur. Servers sekmesinin altõndaki SQL Servers menüsünü kullanarak veritabanõ iş -lemleri yerine getirilebilir ve veritabanõ nesneleri sürükle bõrak metodu ile form üzerine sürüklenebilir.
Dinamik Yard
õ
m Almak
Visual Studio .NET, içinde çok fazla konuyu barõndõrdõğõ için tümüne hakim ol-mak neredeyse imkansõzdõr. Bu nedenle yazõlõm geliştiricilerin işini kolaylaş tõr-mak için, Visual Studio .NET içinde dinamik yardõm kütüphanesi oluşturulmuş -tur. Dinamik yardõm, uygulama geliştirirken yazõlan koda göre tüm yardõm konularõnõ listeler.
Dinamik yardõmõ aktif hale getirmek için, Help menüsünden Dynamic Help komutunu ve-rin.
Görev Listesini Kullanmak
Görev Listesi, aktif proje içine görev eklemek için kullanõlõr. Bu görevler uygu-lama gelişiminin takip edilmesini sağlar. Görev Listesi içine eklenen tüm görev-ler önem sõrasõna göre sõralanabilir.
Görev Listesi aracõnõ proje ortamõnda aktif hale getirmek için View menüsünün Other Windows alt menüsünden Task List komutunu seçin.
Görev Listesi aracõ üzerinde Click here to add a new task alanõ tõklanarak yeni görev eklenebilir. Biten görevin önündeki onay kutusu tõklanarak görev sonlandõrõlabilir.
Konu 3: Uygulamalarda Hata
Ayõklama
Uygulamalarõn geliştirmesi sõrasõnda birçok hata ile karşõlaşõlõr. Bu hatalarõn çoğu çalõşma zamanõnda ortaya çõktõğõ için, kodun yazõlmasõ sõrasõnda hatanõn kaynağõnõn anlaşõlmasõ zordur. Hata üreten kod satõrlarõnõ ve hatalarõn nedenini anlamak için Visual Studio Debug (hata ayõklama) aracõ kullanõlõr.
Visual Studio Debug aracõ;
! Kodlar arasõna BreakPoint konarak, çalõşmanõn istenen satõrda durma-sõnõ,
! Kodlar arasõnda ilerlerken Debug panelleri ile değişkenlerin değerlerinin gözlenmesini,
! Command paneli ile çalõşma anõnda komut çalõştõrõlmasõnõ, değiş kenle-rin değerlerinin değiştirilmesini sağlar.
BreakPoint
BreakPoint kullanõmõ, uygulamanõn çalõşmasõnõn istenen kod satõrõnda durdurulmasõnõ sağlar. Çalõşma, bir şartõn gerçekleştiği durumda da durdurulabilir. Örneğin bir değişkenin, belli bir değeri aldõğõ kod satõrõnda uygulamanõn durmasõ istenebilir.
İstenen bir kod satõrõna BreakPoint koymak için, kod sayfasõnõn sol tarafõnda bulunan panel tõklanõr ya da F9 tuşuna basõlõr.
Belirtilen bir şart gerçekleştikten sonra çalõşmanõn durmasõ isteniyorsa, BreakPoint sağ tõklanõp BreakPoint Properties komutu verilmelidir. Çõkan pencerede Condition düğmesi tõklanarak BreakPoint Condition penceresi açõlõr. Bu pencerede bir değişkenin istenen bir değeri aldõktan sonra çalõşmanõn dur-masõ belirtilir (Resim 1.1).
RESİM 1.1.
Çalõşmanõn, şartõn belli bir sayõ kadar sağlandõğõ zaman durdurulmasõ için, BreakPoint Properties penceresinde Hit Count düğmesi tõklanõr. BreakPoint Hit Count penceresinde, şartõn gerçekleşme sayõsõ girilir. Örnekte, BreakPoint’e beş defa veya daha fazla ulaşõldõğõ zaman durulmasõ belirtilir (Resim 1.5).
Debug Panelleri
Çalõşma durdurulduktan sonra, değişkenlerin o andaki durumlarõ Debug panel-leri ile gözlemlenir. Bu paneller ancak ata ayõklama sõrasõnda kullanõlabilir. De-bug panelleri, DeDe-bug menüsü altõnda Windows menüsünden seçilebilir.
! Autos: Çalõşmakta olan satõrla, bir önceki ve bir sonraki arasõnda kalan
değişkenleri listeler.
! Locals: Çalõşõlan kapsam içindeki tüm değişkenleri listeler. Bu kapsam
bir modül, yordam veya döngü olabilir.
! Watch: Değeri incelenmek istenen değişken veya özellikler, bu panele
yazõlarak eklenir.
Çalõşma durdurulduktan sonra kodlar arasõnda ilerlemek gerekir. Kodlar ara-sõnda ilerlemenin, yordamlarõn içine girilmesi, üzerinden atlanmasõ gibi birçok yol vardõr.
1. Step Into: Çalõştõrõlan kod eğer bir yordam veya fonksiyon ise bu
yor-dam veya fonksiyonun içine girilir ve hata ayõklamaya devam edilir.
2. Step Over: Bir yordam veya fonksiyon içine girilmeden ilerlenir.
3. Step Out: Bir yordam veya fonksiyon içinde ilerleniyorsa, buradan çõkõlarak yordam veya fonksiyonun çağõrõldõğõ yere dönülür.
4. Continue: Bir sonraki BreakPoint satõrõna gidilir. Eğer başka bir
Command Panelini Kullanmak
Command paneli iki farklõ modda kullanõlõr.
! Immediate: Bu modda, değişken değerleri değiştirebilir, .NET
Framework sõnõflarõndaki metotlar veya kullanõcõ tanõmlõ metotlar çalõştõrõlabilir. Immediate moduna geçmek için immed komutu kullanõlõr. Immediate modunda bir değişkenin değeri ? ile öğrenilebilir ve yeni
de-ğer atanabilir. ?sayi 40 sayi = 50 ?sayi 50
! Command: Bu modda, Visual Studio ortamõnda tanõmlõ veya kullanõcõ
tanõmlõ makrolarõ, menü öğeleri kullanõlabilir. Command moduna geç-mek için >cmd komutu kullanõlmalõdõr.
>cmd
>Debug.StepOver >Help.About
Derleme Seçeneklerine Bak
õş
Visual Basic .NET ile geliştirilen uygulamalar çalõştõrõlmadan önce derleme iş le-minden geçer. Derleme işlemi ile kodun Visual Basic söz dizimine uygun yazõ-lõp yazõlmadõğõ kontrol edilir ve kod çalõştõrõlmak üzere makine diline çevrilir. Uygulamalarõn derlenmesi Build menüsünden yapõlõr.
! Build Solution: Solution içindeki, son derleme işleminden sonra değ
i-şen projelerin derlenmesini sağlar.
! Rebuild Solution: Solution içindeki tüm projelerin tekrar derlenmesini
sağlar.
! Build “Proje İsmi”: Belirtilen projenin, son derleme işleminden sonra
değişen bileşenlerinin derlenmesini sağlar.
! Rebuild “Proje İsmi”: Belirtilen projenin tüm bileşenlerinin tekrar
derlenmesini sağlar.
Uygulama derlendikten sonra bulunan hatalar Task List panelinde görüntülenir. Task List panelinde görüntülenen hatalar çift tõklanarak, hatanõn yapõldõğõ satõra ulaşõlõr.
RESİM 1.3.
Visual Basic .NET ile uygulama geliştirirken yapõlan söz dizimi hatalarõ hemen Task List paneline yansõr. Buna Background Compiling denir.
Modül Özeti
1. Assembly nedir?
2. İsim Alanõ nedir?
3. Object Browser niçin kullanõlõr?
4. Server Explorer ne işe yarar?
5. Çalõşma zamanõ hatalarõnõ yakalamak için neler yapõlõr?
LAB 1: Geli
ş
tirme Ortamõnõ Tanõmak
Uygulama 1: Windows Uygulamas
õ
Olu
ş
turmak
Bu uygulamada Windows Application kullanarak Çağrõ Merkezi (Call Center) isminde bir uygulamasõ oluşturacağõz.
Ça
ğ
r
õ
Merkezi Uygulamas
õ
n
õ
Olu
ş
turmak
1. Visual Studio .NET’i kullanarak Çağrõ Merkezi isminde uygulama oluş -turmak.
! File menüsündeki New alt menüsünü işaretleyin ve Project komu-tunu tõklayõn.
! New Project iletişim kutusunda Windows Application şablonunu se-çin.
! Name metin kutusuna CagriMerkezi yazõn.
! Location metin kutusuna C:\Proje yazõn ve OK düğmesini tõkla-yõn.
2. Uygulamanõn Assembly Name özelliğini Cagri olarak değiştirmek.
! Proje ismini sağ tõklayõn.
! Açõlan menüden Properties komutunu verin.
! Açõlan penceredeki Common Properties (Genel Özellikler) klasö-rünü seçin.
! Common Properties klasörü altõndaki General sekmesinde Assem-bly Name metin kutusuna Cagri yazõn ve OK düğmesini tõklayõn.
Uygulama 2: Object Browser Kullanmak
Bu uygulamada Object Browser’õ kullanarak System.Data kütüphanesini inceleyeceğiz.
System.Data Kütüphanesini Açmak
1. View menüsü içinden Object Browser alt menüsünü seçin. 2. Object paneli içindeki System.Data kütüphanesini genişletin.
3. System.Data kütüphanesi içindeki System.Data.OleDb isim alanõnõ genişletin.
4. System.Data.OleDb isim alanõnõ içindeki OleDbConnection,
OleDbCommand, OleDbDataReader, OleDbDataAdapter sõnõflarõnõ inceleyin.
Uygulama 3: Debug Arac
õ
n
õ
Kullanma
Bu uygulamada çağrõ merkezi veritabanõna bağlantõ açan kodlar Debug kullanarak incelenir.
Kodlar
õ
n Yaz
õ
lmas
õ
1. Form1 nesnesinin kod sayfasõna geçin ve OleDbConnection oluşturan bir fonksiyon yazõn.
Private Function ConnectionOlustur(ByVal connectionString As String) As OleDb.OleDbConnection
Return New OleDb.OleDbConnection(connectionString) End Function
2. Formu çift tõklayarak Load olayõna gelin. Load olayõnda, veritabanõna bağlantõ açan kodlarõ yazõn. Bu veritabanõ C:\Proje\CagriMerkezi
klasörü altõnda bulunacaktõr.
Dim con As OleDb.OleDbConnection
' Connection oluşturan fonksiyon çağrõlõr con = ConnectionOlustur( _
"data source= 'C:\Proje\CagriMerkezi\CagriMerkezi.mdb'; Provider = Microsoft.Jet.OleDB.4.0")
con.Open()
' Veritabanõ işlemleri ilerleyen modüllerde ' anlatõlacaktõr. Bu kõsmõ boş bõrakõn.
Hata Ay
õ
klama
1. Formun Load olayõna bir BreakPoint yerleştirin.
2. Projeyi F5 tuşuna basarak çalõştõrõn. Başlangõç formu yüklendiği zaman Load olayõ çalõşacağõ için, çalõşma belirtilen noktada durur.
3. Debug menüsünden Step Into komutunu seçerek ya da F11 tuşuna basarak kod içinde ilerleyin. ConnectionOlustur isimli metodun içine girildiği görülür.
4. ConnectionOlustur metodundan çõkõldõktan sonra, Locals panelini açõn ve con isimli değişkeni inceleyin.
5. Command panelini açõn ve immed komutunu yazarak, Immediate moduna geçin.
6. Command paneline msgbox(con.State) yazarak Connection
nesnesinin State özelliğini öğrenin.
7. Debug menüsünden Continue komutunu vererek ya da F5 tuşuna basarak çalõşmanõn ilerlemesini sağlayõn.
8. Formu kapatarak uygulamayõ sonlandõrõn.
9. con.Open() kodunun bulunduğu satõra BreakPoint koyun ve sağ
tõklayarak BreakPoint Properties komutunu verin.
10. Condition düğmesini tõkayõn ve metin kutusuna con.State = 1 yazõn.
con nesnesinin State özelliği 1 (bağlantõ açõk) olduğu zaman çalõş ma-nõn durmasõ ayarlanõr.
11. OK düğmesini tõklayõn ve projeyi çalõştõrõn. Çalõşmanõn belirtilen
nok-tada durmadõğõ gözükür. Bunun nedeni, BreakPoint içinde verilen şartõn sağlanmamasõdõr.
12. Formu kapatarak uygulamayõ sonlandõrõn ve Visual Studio ortamõndan çõkõn.
ve ADO.NET’e Giri
ş
Bu modülde verilerin hangi ortamlarda depolandõğõnõ öğreneceksiniz. Ayrõca depolanan veriye erişmek için kullanõlan yöntemleri öğrenecek ve ADO.NET teknolojisi hakkõnda bilgi sahibi olacaksõnõz.
Bu modülün sonunda;
! Veri depolama yöntemlerini öğrenecek,
! Bağlantõlõ ve bağlantõsõz veri ortamlarõnõ öğrenecek,
! Veri erişim yöntemlerini öğrenecek,
! ADO.NET nesne modelini öğrenecek,
Veri Depolama
Günümüzde verileri saklamak için çeşitli teknikler kullanõlõr. Örneğin bir emlakçõ emlak alõm-satõm bilgilerini dosya kağõtlarõ üzerinde depolayabilir. Bu yöntem veri arama ve listeleme işlemlerinin karmaşõk hale gelmesine ve arama süresi-nin uzamasõna sebep olur. Hatta daha büyük organizasyonlarda işlemlerin ya-vaşlamasõna ve durmasõna sebep olabilir.
Artan ihtiyaçlar doğrultusunda veri depolamak ve depolanan veriye erişmek için çeşitli veri depolama yöntemleri geliştirilmiştir. Bu yöntemler şunlardõr:
! Yapõsal Olmayan: Bu yöntem ile depolanan veriler için belirli bir
sõnõflandõrma ve sõralama yoktur. Veriler düz bir şekilde kaydedilir. Örneğin basit not dosyalarõ.
! Yapõsal: Bu yöntem ile depolanan veriler çeşitli gruplara ayrõlarak
saklanõr, fakat bu gruplar arasõnda bir alt-üst ayrõmõ yapõlmaz. Örneğin virgülle ayrõlmõş dosyalar (csv), Excel belgeleri.
! Hiyerarşik: Hiyerarşik depolama yöntemini ağaç yapõsõna
benzetebili-riz. Bu yöntemde veriler çeşitli kategorilere bölünerek depolanõr. Her bir kategorinin içinde alt kategorilerde olabilir. Örneğin XML (eXtensible Markup Language) dosyalarõ.
! İlişkisel Veritabanõ: İlişkisel veritabanlarõnda veriler tablolar üzerinde
depolanõr. Tablo içindeki her satõr kaydõ, her sütun ise veriyi ifade eder. Örneğin SQL Server, Oracle, Access.
! Nesne Yönelimli Veritabanõ: En gelişmiş veri depolama yöntemidir.
Bu yöntemde veriler; ihtiyaca göre gruplandõrõlarak nesneler içinde saklanõr. Örneğin Versant, AOL.
Ba
ğ
lant
õ
l
õ
(Connected) Veri Ortamlar
õ
Bağlantõlõ veri ortamlarõ, uygulamalarõn veri kaynağõna sürekli bağlõ kaldõğõ or-tamlardõr. Bu ortamlarda veri alma ve değiştirme işlemleri uygulama ile veri kaynağõ arasõnda bağlantõ kurulduktan sonra gerçekleştirilir. Bağlantõlõ veri or-tamlarõnda, veri işlemleri gerçekleştiği sürece bağlantõ açõk kalõr.
İlk bilgisayar üretiminden bugüne en çok tercih edilen yöntem bağlantõlõ veri or-tamlarõ olmuştur. Bağlantõlõ ortamlar veriye erişmek için birçok avantaj sağlar.
Avantajlarõ
! En güvenli veri ortamõdõr.
! Veri kaynağõna yapõlan eş zamanlõ erişimlerde, veri kaynağõnõn kontro-lünü kolaylaştõrõr.
Dezavantajlarõ
! Uygulama ile veri kaynağõ arasõnda gerçekleşen bağlantõyõ koruyabil-mek için sabit bir ağ bağlantõsõnõn olmasõ gerekir.
! Uygulama ile veri kaynağõ arasõndaki bağlantõ ağ üzerinden gerçekleş -tiği için, ağ trafiğinin yoğunluğunu artõrõr.
Örneğin araba üreten bir fabrikada yapõlan üretim bilgilerinin diğer birimlere ulaştõrõlmasõ ve bu kayõtlarõn depolanmasõ için eşzamanlõ bir bağlantõ kurulmasõ gereklidir. Ya da bir emlak firmasõnda emlakçõnõn, mülk ve menkul bilgilerini güncel tutabilmesi için sabit bir bağlantõ kurmasõ gereklidir.
Ba
ğ
lant
õ
s
õ
z (Disconnected) Veri Ortamlar
õ
Bağlantõsõz veri ortamõ, uygulamanõn veri kaynağõna sürekli bağlõ kalmadõğõ veri ortamõdõr. Uygulama ile veri kaynağõ arasõndaki bağlantõ, veri alõşverişi yapõlõrken açõlõr ve işlem bittikten sonra kapatõlõr. Bu veri ortamlarõ çevrimdõşõ çalõşmak için kullanõlõr.
Teknolojinin ilerlemesi ve veri depolayan araçlarõn taşõnabilirliğinin sağlanmasõ ile tüm dünyada çevrimdõşõ ortamlara duyulan ihtiyaç artmõştõr. Laptop, Notebook ve Pocket PC gibi araçlarõn yaygõnlaşmasõ ile günümüzde uygulamanõn veri kaynağõna bağlõ olmadõğõ durumlarda bile veri girişi yapõlabi-lir.
Uygulamada sadece çevrimiçi veya çevrimdõşõ ortamlardan birini seçmek ye-terli olmayabilir. Gelişmiş uygulamalarda her iki ortamõn avantajlarõnõ birleştiren bir çözüm tercih edilebilir.
Avantajlarõ
! Laptop, Notebook ve Pocket PC gibi araçlarla girilen veriler, istenilen zamanda veri ortamlarõna aktarõlabilir.
! Çevrimdõşõ ortamlar sayesinde, verilerin depolandõğõ uygulama üzerin-deki yük hafifletilir. Bu durum performans artõşõnõ sağlar.
Dezavantajlarõ
! Bağlantõsõz veri ortamlarõnda, verilerin güncel kalmasõna dikkat edilmelidir. Bu ortamlarda veri güncelleme işlemleri farklõ zamanlarda gerçekleştirilebilir. Veri üzerinde yapõlan bu değişimlerin diğer kullanõcõ-lara gösterilebilmesi için çeşitli çözümler geliştirilmelidir.
! Bağlantõsõz veri ortamlarõ içinde farklõ kullanõcõlar eşzamanlõ güncelleme işlemleri gerçekleştirebilir. Bu durumda oluşacak veri çakõşmalarõnõn engellenmesi gerekir.
Örneğin bir toptancõ firmasõnda, firma çalõşanlarõ farklõ konumdaki bayilerinin tüm siparişlerini bir el bilgisayarõna kaydedebilir. Bu veriler el bilgisayarõnda ge-çici bir süre için depolanõr. Bu süre çalõşanlarõn sahada kaldõğõ süredir. Süre so-nunda veriler sunucu bilgisayara aktarõlõr.
Veri Eri
ş
im Yöntemleri
İlk bilgisayardan bugüne veriye erişmek için pek çok yöntem geliştirilmiştir. Bu yöntemlerin bazõlarõnda amaç yerleşim, bazõlarõnda ise paylaşõm olmuştur. Amacõn veriyi saklamak olduğu durumlarda paylaşõm konusunda çözüm aran-mõş, amacõn veriyi birçok kullanõcõ arasõnda paylaştõrmak olduğu durumda ise ana verinin nerede saklanacağõ konusunda çözüm yollarõ aranmõştõr.
Kullanõcõ sayõsõnõn ve verinin boyutunun artmasõyla, veri erişimi için bilinen mo-deller de oldukça gelişmiştir. Birebir veri paylaşõmõ yerine, Internet üzerinden çoklu kullanõcõ desteğine açõk veri erişim modelleri geliştirilmiştir. Günümüzde gelinen son nokta ise, her an her yerden veriye kolayca erişmemizi sağlayan XML Web Servis modelidir.
Veri merkezli uygulamalar geliştirmek için veri erişim modelleri kullanõlõr. Bir veri erişim modelindeki her mantõksal birime katman (tier) denir. Veri merkezli bir uygulamada katman sayõsõ makine sayõsõna bağlõ değildir. Katman sayõsõnõ veri erişim modelindeki düzeyler belirler.
! İstemci Katmanõ (Client Tier): Sunum ya da kullanõcõ servis katmanõ olarak da bilinir. Bu katman kullanõcõ arayüzünü içerir.
! İş Katmanõ (Business Tier): Bu katman, uygulamanõn veri kaynağõ ile
etkileşen bölümüdür.
! Veri Katmanõ (Data Tier): Veriyi içeren katmandõr.
! Birlikte Çalõşabilirlik Katmanõ (Interoperability Tier): Platform ve
dil-den bağõmsõz, her tür veriye etkileşim sağlayan katmandõr. Bu katmana herhangi bir işletim sistemi üzerinde bulundurulabilen XML Web Servislerini örnek verebiliriz.
Uygulamalar katmanlara bölünerek ölçeklenebilirlikleri artõrõlõr.
ADO.NET Nedir?
ADO (ActiveX Data Objects), farklõ veri kaynaklarõna hõzlõ ve güvenli erişim için Microsoft tarafõndan geliştirilen nesne modelidir. ADO.NET ise ADO teknolojisi-nin en yeni versiyonudur. ADO ile aynõ programlama modelini kullanmamakla birlikte, ADO modelinden gelen pek çok çözüm yolunu da beraberinde getirir. Uygulama gelişim ihtiyacõ arttõkça, yeni uygulamalarda Web uygulama mode-line olan bağlõlõk gittikçe azalmaktadõr. Şimdilerde ise ağ bağlantõlarõ üzerinden veriyi rahatça aktarabilmek için XML kullanõmõna olan yönelim artmaktadõr. İşte ADO.NET, XML ve ADO.NET’in .NET Framework içinde en uygun şekilde programlama ortamõ oluşturmamõzõ sağlar.
ADO.NET modelinin diğer veri erişim modellerine göre üstünlüklerini şöyle sõralayabiliriz:
! ADO.NET, veritabanõndan çekilen verilerin kopyasõnõ XML formatõnõ kullanarak belleğe aktarõr.
! Uygulamanõn kullanõcõ sayõsõ arttõkça kaynak kullanõmõ da artar. N-kat-manlõ (N-tier) uygulama yapõsõ kullanõlarak, uygulamalarõn katmanlar üzerinden dağõtõlmasõ sağlanõr. Böylece uygulamalarõn ölçeklenirliği ar-tar.
! ADO.NET ile bağlantõsõz veri ortamlarõ için uygulama geliştirilebilir.
ADO.NET Nesne Modeli
ADO.NET nesne modeli iki ana bölümden oluşur.
! DataSet sõnõflarõ
! .NET veri sağlayõcõ sõnõflarõ
DataSet sõnõflarõ, çevrimdõşõ ortamlar için veri depolama ve yönetme işlemlerini sağlar. DataSet sõnõflarõ veri kaynağõndan bağõmsõz her tür uygulama ve veritabanõ için kullanõlabilir. Özellikle İlişkisel Veritabanõ, XML ve XML Web Ser-visleri üzerinden veri çekmek için kullanõlõr.
.NET veri sağlayõcõ sõnõflarõ, farklõ türdeki veritabanlarõna bağlanmak için kullanõlõr. Bu sõnõflar sayesinde istenilen türdeki veri kaynağõna kolayca bağlantõ kurulabilir, veri çekilebilir ve gerekli güncelleme işlemleri yapõlabilir. 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 veritabanõ ile uygulama (Win-dows, Web) veya XML Web Servisi arasõnda bağlantõ kurmak için her tür alt yapõyõ barõndõran çekirdek bileşendir. Tüm veri sağlayõcõlarõ, System.Data isim alanõ içinde tanõmlanmõştõr.
.NET Framework 1.0 sürümü ile birlikte SQL Server .NET ve OLE DB .NET veri sağlayõcõ sõnõflarõ gelmiştir.
! SQL Server .NET: SQL Server 7.0 ve SQL Server 2000
veritabanlarõna hõzlõ bağlantõ sağlar. SQL Server bağlantõ nesneleri
System.Data.SqlClient isim alanõnda bulunur.
! OLE DB .NET: SQL Server 6.5 ve daha öncesi sürümlerine, Oracle,
Sybase, DB2/400 ve Microsoft Access veritabanlarõna bağlantõ kurmayõ sağlar. OLE DB bağlantõ nesneleri System.Data.OleDb isim alanõnda bulunur.
.NET Framework 1.1 sürümü ile birlikte SQL Server .NET ve OLE DB .NET veri sağlayõcõlarõna Oracle .NET ve ODBC .NET veri sağlayõcõlarõ da eklenmiş -tir.
! ORACLE .NET: Oracle veritabanlarõna bağlantõ için tasarlanmõş veri
sağlayõcõsõdõr. Oracle bağlantõ nesneleri System.Data.OracleClient
isim alanõnda bulunur.
System.Data.OracleClient isim alanõnõ kullanmak için, projeye
! ODBC .NET: Diğer veritabanlarõnõ destekleyen genel bir veri sağ layõcõ-dõr. ODBC bağlantõ nesneleri System.Data.ODBC isim alanõnda bulu-nur.
Öğrenim ve kullanõm kolaylõğõ olmasõ amacõyla ADO.NET veri sağlayõcõlarõn isimlendirilmesinde genelleştirmeye gidilmiştir. SQL Server .NET veri sağlayõcõlarõnõn sõnõf isimleri Sql ön eki ile, OLE DB .NET veri sağlayõcõlarõnõn sõnõf isimleri ise OleDb ön eki ile başlar. Bu genellemeye SqlConnection ve
Her veri sağlayõcõsõ içinde birçok bağlantõ nesnesi bulunur:
! Connection ! Command ! DataReader ! DataAdapter
! XxxConnection: Veri kaynağõna bağlantõ için kullanõlan sõnõftõr.
! XxxCommand: Veri kaynağõ üzerinde sorgu çalõştõrmak için kullanõlõr.
Veri kaynağõndan dönen kayõtlar XxxDataReader veya DataSet
kullanõlarak veri bağlantõlõ kontrollere aktarõlõr.
! XxxDataReader: Çevrimiçi bağlantõlarda sadece veri okumak için
kullanõlan sõnõftõr.
! XxxDataAdapter: Çevrimdõşõ bağlantõlarda kullanõlan veri işleme
nesnesidir.
Xxx yerine seçilen veri sağlayõcõsõna göre SQL, OLEDB, Oracle ve ODBC eklerinden biri kullanõlõr.
Modül Özeti
1. Veri depolama yöntemleri nelerdir?
2. Bağlantõlõ ve bağlantõsõz veri ortamlarõ nelerdir?
3. Veri erişim yöntemleri nelerdir?
Lab 2: Veri Merkezli Uygulamalar ve
ADO.NET’e Giri
ş
Uygulama 1: Yeni ba
ğ
lant
õ
olu
ş
turmak
Bu uygulamada Server Explorer’õ kullanarak Çağrõ Merkezi uygulamasõ için yeni bir bağlantõ oluşturulur.
Ça
ğ
r
õ
Merkezi Uygulamas
õ
İ
çin Yeni Ba
ğ
lant
õ
Olu
ş
turmak
RESİM 2.1.
1. Visual Studio .Net’i kullanarak Çağrõ Merkezi uygulamasõnõ açmak.
! File menüsündeki Open alt menüsü içinden Project komutunu tõkla-yõn.
! Look in açõlan kutusundan C:\Proje\ CagriMerkezi klasörünü seçin.
! Açõlan Open Project penceresinden CagriMerkezi.sln dosyasõnõ seçerek Open düğmesini tõklayõn.
2. Uygulamaya CagriMerkezi veritabanõnõ eklemek.
! Proje ismi sağ tõklayõn.
! Açõlan menüden Add alt menüsündeki Add Existing Item komutunu verin.
! Açõlan pencere üzerindeki Look in açõlan kutusundan CD Sürücüsü\Veritabanõ klasörünü seçin.
! Açõlan Add Existing Item penceresinden CagriMerkezi.mdb
veritabanõnõ seçerek Open düğmesini tõklayõn. 3. CagriMerkezi uygulamasõ için yeni bağlantõ oluşturmak.
! Server Explorer penceresi üzerinde sağ tõklayõn. Açõlan menüden Add Connection komutunu verin.
! Açõlan Data Link Properties penceresinin Provider sekmesini tõkla-yõn.
! Provider sekmesinden Microsoft.Jet.OLEDB.4.0 Provider
seçene-ğini işaretleyerek Next düğmesini tõklayõn.
RESİM 2.2.
! Açõlan Connection sekmesinin görüntüsünü resimdeki gibi düzenleyerek OK düğmesini tõklayõn.
Ba
ğ
lanmak
Veriyi yöneten uygulamalar, bu verilerin bulunduğu kaynağa bağlanma ihtiyacõ duyar. Visual Basic .NET ile veri kaynağõna bağlanmak için, kaynağõn tipine ve yapõsõna göre farklõ nesneler ve farklõ veri sağlayõcõlarõ kullanõlõr.
Bu modülün sonunda;
! Farklõ veritabanlarõna göre veri sağlayõcõlarõ seçebilecek,
! Bağlantõ cümlesi oluşturabilecek,
Veri Sa
ğ
lay
õ
c
õ
Nedir?
ADO.NET mimarisi, uygulama ile veritabanõ arasõnda bağlantõ kurmak ve kuru-lan bağlantõ üzerinden kayõtlarõ almak, değiştirmek ve silmek için veri sağlayõcõlarõnõ kullanõr. Farklõ veritabanlarõ için farklõ veri sağlayõcõlarõ kullanõlõr. Uygun veri sağlayõcõ seçiminde en önemli kriter “Hangi sağlayõcõ en iyi perfor-mansõ verir?” sorusunun cevabõdõr. Çünkü SQL Server, Oracle, Access gibi veritabanlarõna farklõ veri sağlayõcõlarõ ile erişilebilir.
Microsoft .NET Framework, veritabanlarõ ile bağlantõ kurmak için farklõ veri sağlayõcõlarõnõ destekler.
! SQL Server .NET
! OLEDB .NET
Veri Sa
ğ
lay
õ
c
õ
S
õ
n
õ
flar
õ
.NET Framework içindeki veri sağlayõcõlarõ, System.Data.dll içindeki
System.Data isim alanõnda yer alõr. Tablo 3.1’de hangi sağlayõcõ isim alanõ ile hangi veritabanõna bağlanõlabileceği gösterilmektedir.
TABLO 3.1: Veritabanlarõ ve Veri Sağlayõcõ İsim Alanlarõ
Veritabanõ Veri Sağlayõcõsõ İsim Alanõ
Sql Server 7.0 ve sonraki sürümler System.Data.SqlClient
Sql Server 6.5 ve önceki sürümler System.Data.OleDb
Microsoft Access veritabanõ System.Data.OleDb
Oracle Server System.Data.OracleClient
Diğer veritabanlarõ(Oracle, Sybase,DB2/400) System.Data.OleDb
ODBC .NET veri sağlayõcõlarõ, diğer veri sağlayõcõlarõndan farklõ olarak, veri kaynağõna bağlanõrken hiçbir ara katman kullanmaz. Bunun yerine, bağlantõ için ODBC API’leri kullanõr.
.NET Framework veri sağlayõcõlarõ Tablo 3.2’de belirtilen sõnõflarõ kullanõr. Sõnõf isimlerinin önündeki XXX ön eki kullanõlan veri sağlayõcõ ismini simgeler. Eğer veritabanõna OLEDB veri sağlayõcõsõ ile bağlanõlõrsa OLEDB ön ekini, eğer SQL Server veri sağlayõcõsõ ile bağlanõyorsa SQL ön ekini alõr.
Tablo 3.2: Veri Sağlayõcõ Sõnõf İsimleri Sõnõf Açõklama
XXXConnection Bağlantõ açmak ve kapatmak için kullanõlan sõnõftõr.
XXXCommand Veritabanõ üzerinde Stored Procedure (Saklõ Yordamlar) veya SQL cümleleri çalõştõrmak için kullanõlan sõnõftõr.
XXXDataReader Veritabanõndan sadece okunur ve ileri hareketli kayõtlar çek-mek için kullanõlan sõnõftõr.
XXXDataAdapter Veritabanõndan çekilen verileri DataSet içine veya
DataSet’e çevrimdõşõ eklenmiş verileri veritabanõna aktar-mak için kullanõlan sõnõftõr.
System.Data.SqlClient isim alanõ içinden çevrimiçi bağlantõlar geliştirmek için SqlConnection, SqlCommand, SqlDataReader sõnõflarõ kullanõlõr.
! SqlConnection; MS SQL Server üzerinde bağlantõ açmak ve
kapat-mak için kullanõlan sõnõftõr.
! SqlCommand; MS SQL Server üzerinde Stored Procedure (Saklõ
Yor-damlar) veya SQL cümleleri çalõştõrmak için kullanõlan sõnõftõr.
! SqlDataReader; MS SQL Server üzerinde SqlCommand ile çalõştõrõlan
SELECT sorgularõnõn sonuçlarõnõ geri döndürmek için kullanõlan sõnõftõr.
System.Data.SqlClient isim alanõ içinden çevrimdõşõ bağlantõlar geliştirmek için SqlConnection, SqlDataAdapter, DataSet sõnõflarõ kullanõlõr.
! SqlConnection; MS SQL Server üzerinde bağlantõ açmak ve
kapat-mak için kullanõlan sõnõftõr.
! SqlDataAdapter; MS SQL Server’dan çekilen verileri DataSet içine ve
DataSet‘e çevrimdõşõ eklenmiş verileri MS SQL Server’a aktarmak için kullanõlan sõnõftõr.
! DataSet; SQLDataAdapter nesnesinden gelen kayõtlarõ çevrimdõşõ
depolamak ve yönetmek için kullanõlan sõnõftõr. DataSet tüm veri sağ la-yõcõ sõnõflar için ortaktõr.
DataSet, System.Data isim alanõ içinde yer alõr.
System.Data.OleDb isim alanõ içinden çevrimiçi bağlantõlar geliştirmek için
OleDbConnection, OleDbCommand, OleDbDataReader sõnõflarõ kullanõlõr.
! OleDbConnection; Access veya diğer veritabanlarõ üzerinde bağlantõ
! OleDbCommand; Access veya diğer veritabanlarõ üzerinde Stored Procedure (Saklõ Yordamlar) veya SQL cümleleri çalõştõrmak için kullanõlan sõnõftõr.
! OleDbDataReader; Access veya diğer veritabanlarõ üzerinde
OleDbCommand ile çalõştõrõlan SELECT sorgularõn sonuçlarõnõ geri dön-dürmek için kullanõlan sõnõftõr.
System.Data.OleDb isim alanõ içinden çevrimdõşõ bağlantõlar geliştirmek için
OleDbConnection ve OleDbDataAdapter sõnõflarõ kullanõlõr.
! OleDbConnection; Access veya diğer veritabanlarõ üzerinde bağlantõ
açmak ve kapatmak için kullanõlan sõnõftõr.
! OleDbDataAdapter; Access veya diğer veritabanlarõndan çekilen
veri-leri DataSet içine ve DataSet‘e çevrimdõşõ eklenmiş verileri ilgili veritabanõna aktarmak için kullanõlan sõnõftõr.
Ba
ğ
lant
õ
Cümlesi (Connection String)
Olu
ş
turmak
Bağlantõ cümlesi, veri kaynağõna bağlanmak için gerekli bilgileri tutar. Bu cümle, veri kaynağõna bağlantõ kurmak için gerekli bağlantõ parametrelerin birleşiminden oluşur. Bu parametrelerin listesi Tablo 3.3’te gösterilmiştir.
Tablo 3.3: Bağlantõ Cümlesinin Parametreleri Parametre Tanõmõ
Provider Sadece OleDbConnection nesnelerinde kullanõlõr. Bağlantõ sağlayõcõsõnõn ismini tutar. Sağlayõcõ isimleri Tablo 3.4’te belirtilmiştir.
ConnectionTimeout veya
ConnectTimeout
Veritabanõ bağlantõ için beklenmesi gereken maksi-mum saniye sayõsõdõr. Varsayõlan değer 15 saniyedir.
Initial Catalog Veritabanõ adõ
Data Source SQL Server adõ, veya MS Access veritabanõ için dosya adõ
Password (pwd) SQL Server login (giriş) parolasõ
User Id (uid) SQL Server login (giriş) adõ
Integrated Security
veya Trusted Connection
SQL sunucusuna Windows hesabõ ile bağlantõ yapõ la-cağõnõ belirtir. True, False veya SSPI girilebilir.
SSPI, True ile eş anlamlõdõr ve bu durumda Windows hesabõ kullanõlõr.
Persist Security Info Varsayõlan değeri False olur. Bu durumda güvenlik için hassas bilgileri geri döndürmez. True olduğunda ise güvenlik risk taşõmaya başlar.
Tablo 3.3: Bağlantõ Cümlesinin Parametreleri Parametre Tanõmõ
WorkstationID (wid) Workstation veya client (istemci) adõnõ belirtir.
Packet Size Client (istemci) - server (sunucu) arasõ veri transfe-rinde kullanõlan paketlerin boyutunu belirtir.
Mode Veritabanõnõ Read-only (Sadece okunur) ya da Write (Yazõlabilir) modunu belirtir. SQL Server bağlantõ la-rõnda kullanõlmaz.
Provider parametresinin Access, SQL Server ve Oracle veritabanlarõna göre alacağõ değerler Tablo 3.4’te gösterilmiştir
Tablo 3.4: Bağlantõ cümlesinin parametreleri
Tür Açõklama
SQLOLEDB SQL Server için Microsoft OLE DB Provider
MSDAORA ORACLE için Microsoft OLE DB Provider
Ba
ğ
lant
õ
Cümlesini (Connection String)
Kullanmak
Yeni bağlantõ oluşturmak ve yönetmek için OleDbConnection, SqlConnection
gibi XXXConnection sõnõflarõ kullanõlõr. Veri kaynağõna bağlanmak için oluş turu-lan bağlantõ cümlesi, XXXConnection sõnõfõnõn ConnectionString özelliğine atanõr.
Örnekte SQL Server veritabanõ için bağlantõ cümlesi oluşturulmuştur. London
isimli sunucuda bulunan Northwind veritabanõna, sa kullanõcõ ismi ve 2389
parolasõ ile bağlanõlõyor. Eğer veritabanõ sunucusundan 60 saniye içinde cevap alõnamazsa bağlantõ iptal ediliyor.
Dim cnNorthwind as New _
System.Data.SqlClient.SqlConnection()
cnNorthwind.ConnectionString = _ "User ID=sa;" & _
"Password=2389;" & _
"Initial Catalog=Northwind;" & _ "Data Source=London;" & _
"Connection TimeOut=60;"
Örnekte Microsoft Access veritabanõ için bağlantõ cümlesi oluşturulmuştur. OleDb bağlantõsõ yapõldõğõ için Provider özelliğinin Microsoft.Jet. OleDB.4.0 olarak belirtilmesi gerekir. Bağlantõnõn yapõlacağõ Northwind veritabanõnõn local makinede C:\Samples dizini altõnda bulunduğu belirtiliyor.
Dim cnNorthwind as New _
System.Data.OleDb.OleDbConnection()
cnNorthwind.ConnectionString = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\Samples\Northwind.mdb;"
Örnekte Sql Server 6.5 veritabanõ için bağlantõ cümlesi oluşturulmuştur. SQL Server 7.0 sürümünden eski bir veritabanõ sunucuna bağlantõ yapõldõğõ için
Provider özelliği SQLOLEDB olarak belirtiliyor. ProdServ isimli sunucudaki Pubs
veritabanõna, Windows hesabõ (SSPI) ile bağlanõlõyor.
Dim cnNorthwind as New _
System.Data.OleDb.OleDbConnection()
cnNorthwind.ConnectionString = _ “Provider=SQLOLEDB;” & _
“Data Source = ProdServ; Initial Catalog = Pubs;” & _ “Integrated Security=SSPI;”
Microsoft Access veri kaynağõ, tek veritabanõndan oluşur. SQL Server veri kaynağõ ise birden fazla veritabanõndan oluşur. Bu yüzden SQL Server veritabanõ bağlantõ cümlesinde Initial Catalog parametresi kullanõlõr.