Alfabetik Sıralama :ABCDEFGHIJKLMNOPQRSTUVWXYZ -


Bu yazıyı okumadan önce http://www.findikkurdu.com/Article.aspx?ID=49 yazısını okduğunuzdan emin olunuz.

Önceki yazımızda ADO´ya giriş yapmıştık ve bu yazımızda "Connection" nesnesine giriş yapıcağımızı belirtmiştik. "Connection" nesnesi bizi veritabanımıza bağlayan nesnedir.  Ayrıca veritabanı üzerinde yapacağımız bir takım işlemleri de "Connection" nesnesi üzerinden götüreceğiz.

Öncelikle bir "Connection" nesnesi oluşturacağız;

KOD:

<%
SET objConn = Server.CreateObject("ADODB.Connection")
%>

Yazılarımızda kullanım sıramızı dikkate aldığımız için öncelikle veritabanımıza bağlanmamız gerekiyor. Veritabanımıza bağlanmamız için bir "ConnectionString" (bağlantı cümleciği)oluşturmamız gerekiyor. Bağlantı cümleciği "Connection" nesnemize hangi türdeki veritabanına, hangi arayüzü ve hangi ayarları kullanarak bağlanacağını belirtmemizi sağlar. Yani bu da demek oluyor ki her veritabanı türünün bağlantı cümleciği farklıdır.  Hatta aynı veritabanı türünün birden çok bağlantı cümleciği bile olabilir. 

ODBC için DSN ve DSN-Less bağlantı cümleciklerimiz vardır. Bu şu anlama geliyor bağlantı adı  kullanarak veritabanına bağlanmak veya veritabanı adresi kullanarak veritabanına bağlanmak (DSN-Less).

Ancak ODBC´nin eski bir teknoloji olduğunu vurgulamakta yarar var. Çünkü artık OLE DB var. Veritabanımıza OLE  DB kullanarak bağlanmaya tercih ediniz.

Sık kullanacağınız iki bağlantı cümleciğini ele alalım;

Access;
         "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:veritabani.mdb;"
SQL Server;
         "Provider=sqloledb;Data Source=SunucuAdresi;Initial Catalog=VeritabaniAdi;User Id=KullaniciAdi;Password=Sifre;"

Ayrıca diğer bağlantı cümlecikleri için kesinlikle http://www.connectionstrings.com adresini öneririm. Ayrıca kişisel tavsiyem bu cümlecikleri ezberlemeye çalışmayın çünkü tamamen zaman kaybı olucaktır. Elinizin altında bir yere kaydedin ve yeri geldiğinde ordan bakın.

Şimdi veritabanımıza bağlanmanın zamanı gelmiştir;

KOD:

<%
SET objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("veritabani.mdb")
%>


Bu kod şu işlemleri yapmaktadır;
     1. Veritabanı bağlantı nesnemizi oluşturduk.
     2. Veritabanı bağlantı nesnemize "Microsft Jet OLEDB 4.0" arayüzünü kullanarak veritabani.mdb dosyasına bağlanmasını söyledik.

"Connection String" belirmek için bir diğer yöntem ise "ConnectionString" "property" sini kullanmaktır.

KOD:

<%
SET objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("veritabani.mdb")
objConn.Open
%>


Ne farkı var diye sorarsanız hiç bir farkı yok. İstediğinizi kullanabilirsiniz.  Artık veritabanımıza bağlandığımıza göre veritabanında işlemler yapmaya başlayabiliriz. Veritabanında işlemler yapmak için SQL (Structed Query Language)  isimli sorgu dilini kullanmaktayız. Bu veri dilinin bazı temel komutları vardır ve bu komutlar hemen hemen tüm veritabanı türlerinde aynıdır. (SELECT, UPDATE, DELETE, INSERT gibi) Ancak bazı ufak farklılıklar ileri düzey kullanımlarda ortaya çıkacaktır. (Şimdi onlara değinerek kafanızı karıştırmak istemiyorum.)  Yazımızın başında da söylediğimiz gibi yazımız tamamen ADO ile ilgilidir ve bu nedenle SQL´e değinmeyeceğim. Ayrıca SQL´i SQL Server ile karıştırmayınız. SQL vakti zamanında IBM tarafından üretilmiş bir sorgulama dilidir. Ancak SQL Server, Microsoft tarafından üretilmiş bir veritabanı sunucusudur.

ADO´da veritabanımızı sorgulamak için "Execute" metodunu kullanırız.

KOD:

<%
SET objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("veritabani.mdb")
objConn.Open
objConn.Execute "INSERT INTO tblVeriler (fldVeri) VALUES (´Merhaba Dünya:P´);"
%>

Bu kod veritabanındaki "tblVeriler" tablosuna veri eklememizi sağladı.

Düzenli programcılar olarak; veritabanı ile işimiz bittiğinde bağlantımızı kapatmamız gerekiyor:) İşte bu iş için "Close" metodunu kullanmaktayız. Ayrıca nesnemizi hafızadan temizlememiz de performans artışı sağlayacaktır. 

KOD:

<%
SET objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("veritabani.mdb")
objConn.Open
objConn.Execute "INSERT INTO tblVeriler (fldVeri) VALUES (´Merhaba Dünya:P´);"
objConn.Close
SET objConn = Nothing
%>

"Connection" nesnesi ile yapabileceğimiz temel işlemler bunlar.  Bu yazının devamı ileri-düzey konuları ve detay kısmını ele almaktadır.

"Connection" nesnesi bize bağlandığımız veritabanının "schema"´sını (şema) almamızı sağlar. Şema derken, veritabanındaki tablo ve alanların (field) listesini kastediyoruz. "OpenSchema" bize bir "RecordSet" döndürüyor. "OpenSchema" metodunun bir adet parametresi bulunmaktadır. Bu parametre şema türünü belirtmeye yaramaktadır. Toplamda 46 adet şema türü olmasına rağmen OLE DB sadece 3 adetini desteklemektedir. Biz ise genel olarak iki tanesini kullanacağız. Üçüncüsüne hiç değinmeyeceğiz bile.

İlk kullanacağımız şema türü "adSchemaTables"  değeri ise "20" dir. Bize tablonun ismi ve türünü döner. (Türü derken kullanıcı tarafından mı yaratıldığı yoksa veritabanın sisteminde varolan bir tablo mu olduğu) Bu şema türünde "TABLE_NAME" ve "TABLE_TYPE" alanları döner.

İkinci kullanacağımız şema türü ise "adSchemaColumns" değeri ise "4" dür. Bize sütunların ismini ve hangi tabloya ait olduğunu döner. Bu şema türünde "TABLE_NAME" ve "COLUMN_NAME" alanları döner.
 

KOD:

<%
SET objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("veritabani.mdb")
objConn.Open
SET objRS = objConn.OpenSchema(4)
objConn.Close
SET objConn = Nothing
%>

Geri kalan işlemler "RecordSet" ile ilgili olduğu için bu konuyu burada bırakacağım. Ancak eğer diğer şema trlerini görme istiyorsanız;

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdcstschemaenum.asp

"Connection" nesnesinin bir "property"si ise "State"´dir. Bağlantımızın ne durumda olduğunu bu özellik yardımıyla öğreniyoruz. Bu özellik bize şu değerleri döner;

Bağlı Değil = 0
Bağlı          = 1
Bağlanıyor = 2 

KOD:

<%
SET objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("veritabani.mdb")
objConn.Open

IF objConn.State = 1 THEN objConn.Close ´  Bağlı ise bağlantıyı kesmesini söylüyoruz.
SET objConn = Nothing
%>

"CursorLocation"  "property" si ise kayıtlarımızın nerede işleneceğini belirler. İki türü vardır "Client" ve "Server".

"Client" olarak belirlendiğinde veritabanı sunucumuz verileri OLE DB, ODBC ile istemciye gönderir. Veriler istemcinin sanal hafızasında saklanır ve istemci kendi ihtiyacı olanları kullanır.

"Server" olarak belirlendiğinde ise veriler, veritabanı sunucumuzun "Temp" alanında tutulur ve istemciye sadece ihtiyacı olan veriler gönderilir.

"CursorLocation" değeri varsayılan olarak "Server" modundadır ve değiştirmeye de pek gerek yoktur. "Server" moduna almak için "2", "Client" moduna almak için ise "3" değerini kullanacağız.

"Connection" nesnesi ile ilgili olarak bilmeniz gereken birşey ise "native  command" ve "native stored procedure" desteğidir. Yani SQL Server kullanırken bir "Stored Procedure"yi kullanmak için aşağıdaki yöntemi kullanabiliriz;

KOD:

<%
´Veritabanımızda KullaniciEkle adlı bir SP olduğunu varsayalım
SET objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("veritabani.mdb")
objConn.Open
objConn.KullaniciEkle "FiNaRFiN", "Can HANHAN"
objConn.Close
SET objConn = Nothing
%>

Bu yöntemde "Connection" nesnesi parametre türünü kendi belirleyecektir. Bu da bize büyük bir kullanım kolaylığı ve kodlarımız açısından da güzellik sağlamaktadır. Ancak bu kullanım .Net´de problem çıkartmaktadır ve kullanılmaması gerekmektedir.

"Connection" nesnemizi ilgilendiren bir diğer konu ise "transaction" konusudur. Bu konuda anlatacağımız şeyler ilerideki konularımızla çakışacağı için yazı dizimizin sonuna ayrıca bir "ADO ve Transaction"  makalesi ekleyeceğiz.

(Findikkurdu.com)



Konu: ADO - Connection (Bölüm 2)
 
Okunma Sayısı : 149
Eklenme Tarihi : 31 Ocak 2007, Çarşamba
SONRAKI BILGI : Öğretmenler Şubatta kavuşuyor   
Forum Linki:
Aranan Kelime:
 

En Yeni Bilgiler


 ISS PWS DB`Ye Yazma Okuma izni verme ISS PWS DB`Ye Yazma Okuma izni verme
 FSO ile Upload FSO ile Upload
 Rastgele şifre üretmek Rastgele şifre üretmek
 ASP - Boşluksuz(Space) Uzun Kelimeleri Bölme ASP - Boşluksuz(Space) Uzun Kelimeleri Bölme
 ASP ile Base64 Şifreleme ASP ile Base64 Şifreleme
 ASP ile Base64 Şifre Çözme ASP ile Base64 Şifre Çözme
 Tüm harfleri büyütme, küçültme ve kelimelerin ilk harflerini büyütme Tüm harfleri büyütme, küçültme ve kelimelerin ilk harflerini büyütme
 Mailleri bölerek göndermek Mailleri bölerek göndermek
 Türkçe karakterleri ingilizce karşılıklarına çevirmek Türkçe karakterleri ingilizce karşılıklarına çevirmek
 Hata sayfası(404) ile link yönetimi Hata sayfası(404) ile link yönetimi
 Mail okundu bilgisi Mail okundu bilgisi
 Online üyeler Online üyeler
 Önceki sonraki linki Önceki sonraki linki
 ASP ile Web Programcılığı ASP ile Web Programcılığı
 ASP de diziler , dizi değişkenler ASP de diziler , dizi değişkenler
 ASP - Operatörler ASP - Operatörler
 ASP ile MySQL verilerini sayfalama ASP ile MySQL verilerini sayfalama
 ASP ile MS Access verilerini sayfalama ASP ile MS Access verilerini sayfalama
 ADO - Giriş (Bölüm 1 ADO - Giriş (Bölüm 1
 ADO - Connection (Bölüm 2) ADO - Connection (Bölüm 2)
 ASP ile Online Radyo Hizmetine Giriş ASP ile Online Radyo Hizmetine Giriş
 ASP dosyalarını DLL´ye çevirme ASP dosyalarını DLL´ye çevirme
 HTTP 500.100 hatalarına hükmedin HTTP 500.100 hatalarına hükmedin
 ASP ve VBScript nedir? ASP ve VBScript nedir?
 VBScriptte Veri Tipleri VBScriptte Veri Tipleri
 VBScriptte değişkenler ve sabitler VBScriptte değişkenler ve sabitler
 VBScriptte Dictionary Nesnesi VBScriptte Dictionary Nesnesi
 Regular Expressions (Düzenli İfadeler) Regular Expressions (Düzenli İfadeler)
 Şartlı ifadeler Şartlı ifadeler
 Persist Bileşeni ile Email formu Persist Bileşeni ile Email formu
 Vertabanından 2-3-4`erli sıralama Vertabanından 2-3-4`erli sıralama
 Arama Motoru yapmak Arama Motoru yapmak
 Jmail bileşeni ile mail formu Jmail bileşeni ile mail formu
 ASP`ye giriş ASP`ye giriş
 Değiskenler Değiskenler
 ASP başlangıç ASP başlangıç
 Arama Motoru Arama Motoru
 Form bilgileri Form bilgileri
 Veritabanı, kayıt ve silme işlemleri Veritabanı, kayıt ve silme işlemleri
 Veritabanına bağlanmak ve veri almak Veritabanına bağlanmak ve veri almak
 Veritabanı oluşturma Veritabanı oluşturma
 Querystring Querystring
 Mailllist yapımı Mailllist yapımı
 Kayıtları Sayfalara bölmek Kayıtları Sayfalara bölmek
 Sub kullanımı Sub kullanımı
 Ziyaretçi`nin IP Numarasını almak Ziyaretçi`nin IP Numarasını almak
 Sayfaya şifre koymak Sayfaya şifre koymak
 Online kişi sayısı Online kişi sayısı
 Kategorili Sistem Kategorili Sistem
 Tarihler arası veri seçtirmek. Tarihler arası veri seçtirmek.
 GET Yöntemi ile İşlemler GET Yöntemi ile İşlemler
 POST Yöntemi ıle ışlemler POST Yöntemi ıle ışlemler
 ASP`de Güvenlik Önlemleri ASP`de Güvenlik Önlemleri
 Cdonts ile mail formu Cdonts ile mail formu
 FSO ile log tutmak FSO ile log tutmak
 ASPUpload bileşeni ASPUpload bileşeni
 Sunucu Değişkenleri Sunucu Değişkenleri
 Alışveriş ve Sepet Yapımı Alışveriş ve Sepet Yapımı
 Flood koruması Flood koruması
 Sayfaları şifreleme(ENCODE) Sayfaları şifreleme(ENCODE)
 SPLIT Kullanımı SPLIT Kullanımı
 YTL Güncellemesi YTL Güncellemesi
 Tarih ve Saat Fonksiyonları Tarih ve Saat Fonksiyonları
 Döngüler Döngüler
 XMLHTTP XMLHTTP
 NTVMSNBC.COM Haberleri NTVMSNBC.COM Haberleri
 IIS Ayarları 2 IIS Ayarları 2
 ASP Tear ASP Tear
 Rastgele Veri Rastgele Veri
 ASP Jpeg ASP Jpeg
 SQL Komutları SQL Komutları
 Array Nesnesi Array Nesnesi
 If...else ıfadesi If...else ıfadesi
 Tavsiyet Et Tavsiyet Et
 Birden Fazla Alanadı Desteği Birden Fazla Alanadı Desteği
 Online Üyeler Online Üyeler
 Güvenlik Kodu Güvenlik Kodu
 MS SQL Server - 2 MS SQL Server - 2
 MS SQL Server - 1 MS SQL Server - 1
 MS SQL Server - 3 MS SQL Server - 3
 XMLHTTP ile döviz Kurları XMLHTTP ile döviz Kurları
 TL`yi YTL olarak Yazdırmak TL`yi YTL olarak Yazdırmak
 YTL`yi TL olarak Yazdırmak, YTL`yi TL olarak Yazdırmak,
 Dönüşümlü Banner Sistemi Dönüşümlü Banner Sistemi
 IP Filtresi IP Filtresi
 MySmartUpload Bileşeni MySmartUpload Bileşeni
 SQL İle İşlemler SQL İle İşlemler
 Cookie(Çerez) Kullanımı Cookie(Çerez) Kullanımı
 ASP ile Mail gönderme. ASP ile Mail gönderme.
 SQL - Yapısal Sorgu Dili 1 SQL - Yapısal Sorgu Dili 1
 MS SQL Server - 4 MS SQL Server - 4
 Klasör Şeklinde Linkler(404 Yönetimi) Klasör Şeklinde Linkler(404 Yönetimi)
 Http`leri Link Yapmak Http`leri Link Yapmak
 Cookie`s (Çerezler) Cookie`s (Çerezler)
 Renkli Tablolar Renkli Tablolar
 Windows XP`de SMTP Kurulumu Windows XP`de SMTP Kurulumu
 Err Nesnesi Kullanımı Err Nesnesi Kullanımı
 MS SQL Server - 5 MS SQL Server - 5
 Daha Performanslı Kodlar Daha Performanslı Kodlar
 Jmail ile Şifreleme Jmail ile Şifreleme
 Karakter Temizleme Karakter Temizleme
 Sınırsız Kategori Sistemi Sınırsız Kategori Sistemi
 Makale Sayfalama Makale Sayfalama
 IIS Kurulumu ve Yazma İzni IIS Kurulumu ve Yazma İzni
 Geçen Zaman Gösterimi Geçen Zaman Gösterimi
 Include Yöntemleri Include Yöntemleri
 E-Mail adresi kontrolü E-Mail adresi kontrolü
 Açılır Kutu(DropDown) yapımı Açılır Kutu(DropDown) yapımı
 FSO ile Listeleme FSO ile Listeleme
 Tarih Format`ı Tarih Format`ı
 XmlHTTP Türkçe Karakter Problemi XmlHTTP Türkçe Karakter Problemi
 Bileşen Kurulumu Bileşen Kurulumu
 Stored Procedure - MSSQL Stored Procedure - MSSQL
 Ntvmsnbc Haberleri (XmlHTTP) Ntvmsnbc Haberleri (XmlHTTP)
 Tarih Biçimleri Tarih Biçimleri
 Stored Procedure Değişkenler Stored Procedure Değişkenler
 Fonksiyon(Function) Kullanımı Fonksiyon(Function) Kullanımı
 Tablolu Yanyana Sıralama Tablolu Yanyana Sıralama
 Puan sistemi Puan sistemi
 Access`ten MSSQL`e Access`ten MSSQL`e
 SQL Distinct Kullanımı SQL Distinct Kullanımı
 Değer Fonksiyonları Değer Fonksiyonları
 Türkçe karakter kontrol Türkçe karakter kontrol
 ASP Class(Sınıf) Kullanımı ASP Class(Sınıf) Kullanımı
 Üyelik Sistemi Yapımı Üyelik Sistemi Yapımı
 IIS Şifresi Koymak IIS Şifresi Koymak
 Operatörler: Operatörler:
 RSS Sayfası Yapımı RSS Sayfası Yapımı
 Veritabanı Tablo İşlemleri Veritabanı Tablo İşlemleri
 

 

 

Copyright © 2008 Temha.neT