• Tidak ada hasil yang ditemukan

Visual Studio 2005 Cilt 2

N/A
N/A
Protected

Academic year: 2021

Membagikan "Visual Studio 2005 Cilt 2"

Copied!
384
0
0

Teks penuh

(1)

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

(2)
(3)

.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.

(4)

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

(5)

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

(6)

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

(7)

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

(8)

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

(9)

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

(10)

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

(11)

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

(12)

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

(13)

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,

(14)

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.

(15)

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õ

(16)

! 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.

(17)

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

(18)

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.

(19)

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.

(20)

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:

(21)

! 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.

(22)

İ

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

(23)

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

(24)

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

(25)

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

(26)

Inherits System.Windows.Forms.Form ' ...

Dim OgrBilgi As New ogr.Bilgi

(27)

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:

(28)

! 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õş

(29)
(30)

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.

(31)

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.

(32)

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.

(33)

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.

(34)

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.

(35)

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.

(36)

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).

(37)

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

(38)

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

(39)
(40)

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.

(41)

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?

(42)

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.

(43)

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.

(44)

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.

(45)

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,

(46)
(47)

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.

(48)

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.

(49)

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.

(50)

! 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.

(51)

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.

(52)

! İ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.

(53)

Uygulamalar katmanlara bölünerek ölçeklenebilirlikleri artõrõlõr.

(54)
(55)

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.

(56)

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õ

(57)

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

(58)

! 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

(59)

Her veri sağlayõcõsõ içinde birçok bağlantõ nesnesi bulunur:

! Connection ! Command ! DataReader ! DataAdapter

(60)

! 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.

(61)

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?

(62)

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.

(63)

! 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.

(64)
(65)

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,

(66)
(67)

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

(68)

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.

(69)

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.

(70)

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õ

(71)

! 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.

(72)
(73)

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.

(74)

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

(75)

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.

(76)

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.

(77)

Gambar

TABLO 3.1: Veritabanlarõ ve Veri Sağlayõcõ İsim Alanlarõ
Tablo 3.3: Bağlantõ Cümlesinin Parametreleri
Tablo 3.5’te OLEDB ile Access’e bağlanmak için gerekli, örnek bağlantõ cümle- cümle-leri gösterilmektedir
Tablo 3.6’da ODBC ile SQL Server’a bağlanmak için gerekli örnek bağlantõ  cümleleri gösterilmektedir
+7

Referensi

Dokumen terkait

3.8.1 Skematik Hubungan Pergerakan Difabel terhadap Respek antara Difabel dan Non-Difabel

Dari berbagai penelitian , secara umum disepakati UHPC perlu ditambahkan serat baja mutu tinggi sebesar 2 – 2,5 % Volume, agar diperoleh sifat keruntuhan yang

Perlakuan formulasi penggunaan tepung pisang dan pure e pisang dalam pembuatan snack bar dibuat dalam tiga perlakuan yaitu perbandingan tepung pisang dan pure e

Ruang lingkup dari studi ini meliputi bagian pipa antara shore crossing point dan kontur kedalaman perairan 13m dari Jalur Pipa Transmisi (SSWJ II PHASE 1) di kedua area,

Tampilnya Boris yeltsin sebagai Presiden pertama Rusia berusaha untuk mewujudkan “Revolusi Baru Rusia”, dan berusaha membawa Rusia pada era baru yang berbeda dengan

Ekspektasi dari penelitian ini adalah, penulis dapat lebih memahami tentang isu feminisme yang berkembang di Indonesia dan mengumpulkan data valid melalui wawancara

UJI PUBLIK.. Seiring berkembangnya teknologi, berkembang pula kejahatan. Didunia internet, kejahatan dikenal dengan nama cyber crime. Kejahatan dunia maya sangatlah

Untuk mendapatkan lapisan tipis SiN yang baik yang mempunyai sifat anti refleksi maka dalam penelitian dengan metode RF sputtering dilakukan variasi komposisi unsur Si dan N,