Özel bağlantı cümleciklerini yazarken kullanılan belli başlı ifadeler ve kurallar bulunmaktadır. Bu kurallar çerçevesinde ihtiyacınıza ve isteğinize uygun bir biçimde kendi bağlantı ifadenizi oluşturabilir ve veritabanı erişim sorunlarınızı aşabilirsiniz. Şimdi bu ifadeler neler kısaca onlara deyinelim;
- Provider: OLDE DB için bağlanmak istediğimiz veritabanı sağlayıcısını belirtiyor. Örneğin bağlanmak istediğimiz veritabanı Access değil de MSSQL Server ise bunu bu ifade ile belirtiyoruz. Eğer sağlayıcı belirtmezseniz OLE DB için varsayılan ODBC sürücüsü kullanılacaktır ve veritabanınız için uygun ODBC tanımlamalarını yapmanız gerekecektir. OLE DB için en sık kullanılan ifadeler ise şu şekildedir;
- Access için: Provider=Microsoft.Jet.OLEDB.4.0;...
- MSSQL Server için: Provider=SQLOLEDB;...
- ORACLE için: Provider=OraOLEDB;...
- Driver Eğer OLE DB sağlayıcısı (provider) belirtmediyseniz kullanılacak ODBC sürücüsünü tanımlar.
- Server: SQL server için bağlanılacak veritabanı sunucusunu belirtir.
- Database: Bağlanılacak olan SQL Server veritabanının ismini belirtir.
- DBQ: Eğer dosya sistemi veritabanı kullanıyorsanız (Access gibi) veritabanı dosyasının sunucu üzerindeki yerini yani konumunu belirtir.
- UID: Veritabanı sunucu için bağlantı kullanıcı adını belirtir.
- PWD: Veritabanı sunucu için bağlantı parolasını belirtir.
- DSN: Eğer kullanıyorsanız veri kaynağınızın (data source) adı. Tanımlanan veri kaynağına göre diğer parametreleri atlayabilirsiniz. Eğer veri kaynağı tanımlaması yaparken diğer parametreleri belirttiyseniz "DSN=VeriKaynagiAdi" geçerli bir bağlantı cümlesi olacaktır.
Farklı türdeki veritabanı bağlantı cümlecikleri için burada listelenenler dışında farklı bağlantı parametreleri de olabilir. Bu ve buna benzer konular hakkındaki daha ayrıntılı bilgileri sunucunuzun yöneticilerinden alabilirsiniz.
Örneğin bizim örnek uygulamamızda kullandığımız Access veritabanı için ODBC bağlantısının cümleciği şu şekildedir.
-
"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=C:Inetpubwwwrootasp_sitedbveriler.mdb
Benzer bir şekilde OLE DB üzerinden SQL Server için bağlantı cümleciği de şu şekildedir;
-
Provider=SQLOLEDB;Server=SunucuBuraya;Database=VeritabaniAdi;UID=kullaniciAdi;PWD=parolaburaya
Örnekleri biraz daha genişletmek istersek:
ODBC DSNLess Bağlantıları;
MS Access ODBC DSNless bağlantısı
Driver={Microsoft Access Driver (*.mdb)};Dbq=c:somepathveritabani_adi.mdb;Uid=Admin;Pwd=pass;
dBase ODBC DSNless bağlantısı
Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=c:somepathveritabani_adi.dbf;
Oracle ODBC DSNless bağlantısı
Driver={Microsoft ODBC for Oracle};Server=OracleServer.world;Uid=admin;Pwd=pass;
MS SQL Server DSNless bağlantısı
Driver={SQL Server};Server=sunucu_adı;Database=veritabani_adi;Uid=sa;Pwd=pass;
MS Text Sürücüsü DSNless bağlantısı
Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=c:somepath;Extensions=asc,csv,tab,txt;Persist Security Info=False;
Visual Foxpro DSNless bağlantısı
Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=c:somepathveritabani_adi.dbc;Exclusive=No;
MySQL DSNless bağlantısı
driver={mysql};database=veritabani_adi;server=sunucu_adı;uid=kullanici_adi;pwd=sifre;option=16386
OLE DB Bağlantıları
MS Access OLE DB bağlantısı
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:somepathveritabani_adi.mdb;User Id=admin;Password=pass;
Oracle OLE DB bağlantısı
Provider=OraOLEDB.Oracle;Data Source=veritabani_adi;User Id=admin;Password=pass;
MS SQL Server OLE DB bağlantısı
Provider=SQLOLEDB;Data Source=machineName;Initial Catalog=veritabani_adi;User ID=sa;Password=pass;
MS SQL Server OLE DB bağlantısı (IP adresi kullanarak)
Provider=SQLOLEDB; Data Source=xx.xx.xx.xx,1433; Network Library=DBMSSOCN; Initial Catalog=veritabani_adi;User ID=sa;Password=pass;
MS Text Sürücü OLE DB bağlantısı
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:yourpath;Extended Properties='text;FMT=Delimited'"
Şifre Korumalı veritabanı bağlantıları:
Acces Database şifreli ise
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:somepathveritabani_adi.mdb;Jet OLEDB:Database Password=pass;
Acces Database şifreli ise (OLEDB)
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:somepathveritabani_adi.mdb;Persist Security Info=False;Jet OLEDB:System database=C:Program FilesCommon FilesSystemSystem.mdw;Jet OLEDB:Database Password=pass;
NT 4 de çalışır
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:somepathveritabani_adi;Persist Security Info=False;Jet OLEDB:System database=C:winntsystem32System.mdw;Jet OLEDB:Database Password=pass;