Merhabalar,
SQL e birden fazla baglantı gerçekleştirebilirsiniz bu sizin şirket içindeki PC lerin durumuna baglıdır.
Örnegin Kendi makineniz üzerinde çalışmak,server üzerinden çalışmak,Uzaktaki bir makineye baglanmak,Web Server üzerine baglanmak vs vs..
Bunlar içinde 2-3 şekilde baglantı saglayabilirsiniz... ODBC,OLE DB,Datashape gibi...
ODBC köprüsünü kullanıyorsanız... ( Nedir ODBC derseniz ? http://windowshelp.microsoft.com/Windows/tr-TR/help/5628d770-9564-49bc-b82c-f6c32b7a35511055.mspx) burayı inceleyiniz..
Standart baglantıyı
Driver={SQL Server};Server=ServerADI;Database=DATABASEADI;Uid=KullanıcıADI;Pwd=Sifre;
ODBC ye Güvenli bir baglanı saglamak isterseniz..(windows kullanıcısı ile)
Driver={SQL Server};Server=ServerADI;Database=DATABASEADI;Trusted_Connection=Yes
Nedir güvenli baglantı ? Windows Authanction ile baglantıdır.. Yani windows kullanıcısı ile girmek.
Eger OLE DB üzerinden baglantı saglamak istersenizde.. Nedir bu OLEDB dersenizde (http://www.verivizyon.com/kitapoku.asp?catid=167#2) bu adresi inceleyiniz.
Standart Bir Baglantı icin
Provider=sqloledb;Data Source=ServerADI;Initial Catalog=DATABASEADI;User Id=KUllanıcı ADı;Password=sifreniz
Güvenli Baglantı ( windows Kullanıcıs ile birlikte giriş)
Provider=sqloledb;Data Source=ServerADI;Initial Catalog=DATABASEADI;Integrated Security=SSPI;
Gelelim kayıtları okuturken Recordsetleri tanıtmaya ve nasıl kullanıldıgına..
Bilen var bilmeyen var Recordsetleri nasıl tanıtıyoruz ?
Vb6 da Referanslardan Microsoft ActiveX Data Object 2.6 ve üzeri hangisi varsa onu ekleyiniz.
Kodun en tepesine
dim Cnn as new adodb.connection ' Bu Kod ile Veritabanına baglantıyı saglıyoruz
dim rst as new adodb.recordset ' Bu Kod ilede Veritabanındaki kayıtlarla ilgili işlemler yapıyoruz.
Cnn.Open " Provider=sqloledb;Data Source=ServerADI;Initial Catalog=DATABASEADI;User Id=KUllanıcı ADı;Password=sifreniz" ' Olarak yaparız.
Gelelim Kayıtlar üzerindeki İşlemlere
Örnegin yazdıgınız SQL cümlesidnen sonra açtıgınız
rst.Open "select * from personel", conn, adOpenDynamic, adLockOptimistic
bu cümleler ne işe yarar?
1-adOpenForward Only > Kayıtlar üzerinde cursor sadece ileri dogru hareket eder. Geriye hareket etmez.Yeni Kayıt ekleyemeyiz,ve bir başkaları tarafından o an eklenen yeni bir kayıt varsa recordseti kapatıp açana kadar o kaydın eklenip eklenemdigini göremeyiz.
2-adOpenStatic > Forwad Only ile aynı özellikleri taşır farkı ise geriye dogru hareket edebilir,ve kayıt ekleyebiliriz.. o Anda yeni bir kayıt işlemi başkası tarafından yapıldı ise recordseti kapatıp tekrar açıldıgında görülebilir.
3-adOpenDynamic> Çok kullanışlı bir cursor tipidir. Yukarı ve aşşagıya dogru hareket eder,yeni kayıt eklenebilir,kaydı degiştirebiliriz.Bir başkası tarafından yeni kayıt eklenirse o anda bu kaydı görebiliriz.
4-adOpenKeySet > Bu Method ile başkalarının degiştirdigi kayıtları görebilmekteyiz.
ve Bunlara ait olan Kilitleme yöntemleri
1-AdLockReadOnly: Kayıtlı verilerimizin değiştirilmesini, üzerine
yazılmasını engellememizi sağlar. Yeni kayıt girişini engeller.
Sadece Listelemeye izin verir…
2-AdLockOptimistic: kayıtlarımızın güncelleştirilmesini,yeni kayıtlar eklememizi, ve istersek silmemizi sağlar.
3-AdLockPessimistic: Eğer bir veritabanı üzerinde işlem yapıyorsak, işlemlerimiz bitene kadar, diğer işlem yapabilecek kişileri engellemek için RecordSet’e kilit koyar.
