OdbcConnection.ConnectionString Özellik

Tanım

Veri kaynağını açmak için kullanılan dizeyi alır veya ayarlar.

public:
 virtual property System::String ^ ConnectionString { System::String ^ get(); void set(System::String ^ value); };
public:
 property System::String ^ ConnectionString { System::String ^ get(); void set(System::String ^ value); };
public override string ConnectionString { get; set; }
public string ConnectionString { get; set; }
[System.ComponentModel.SettingsBindable(true)]
public override string ConnectionString { get; set; }
member this.ConnectionString : string with get, set
[<System.ComponentModel.SettingsBindable(true)>]
member this.ConnectionString : string with get, set
Public Overrides Property ConnectionString As String
Public Property ConnectionString As String

Özellik Değeri

ODBC sürücüsü, ilk bağlantıyı kurmak için gereken veri kaynağı adı gibi ayarları içeren bağlantı dizesi. Varsayılan değer boş bir dizedir (""). Uzunluk üst sınırı 1024 karakterdir.

Uygulamalar

Öznitelikler

Açıklamalar

ConnectionString özelliği ODBC bağlantı dizesi biçimiyle mümkün olduğunca yakından eşleşecek şekilde tasarlanmıştır. ConnectionString yalnızca bağlantı kapatıldığında ve ayarlanır ayarlanmaz Sürücü Yöneticisi'ne ve temel alınan sürücüye geçirildiğinde ayarlanabilir. Bu nedenle, için ConnectionString söz dizimi, Sürücü Yöneticisi ve temel sürücü desteğiyle tam olarak eşleşmelidir.

çeşitli veri kaynaklarına bağlanmak için özelliğini kullanabilirsiniz ConnectionString . Buna ODBC veri kaynağı adı (DSN) dahildir. Aşağıdaki örnekte birkaç olası bağlantı dizesi gösterilmektedir.

"Driver={SQL Server};Server=(local);Trusted_Connection=Yes;Database=AdventureWorks;"

"Driver={Microsoft ODBC for Oracle};Server=ORACLE8i7;Persist Security Info=False;Trusted_Connection=Yes"

"Driver={Microsoft Access Driver (*.mdb)};DBQ=c:\bin\Northwind.mdb"

"Driver={Microsoft Excel Driver (*.xls)};DBQ=c:\bin\book1.xls"

"Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=c:\bin"

"DSN=dsnname"

Not

ODBC için .NET Framework Veri Sağlayıcısı, diğer .NET Framework veri sağlayıcıları tarafından desteklenen anahtar sözcüğü desteklemezPersist Security Info. Ancak, ConnectionString özelliği olarak ayarlanmış falsegibi Persist Security Info davranır. Bu, bağlantı açıldıysa özelliğinden ConnectionString parolayı alamayacağınız anlamına gelir. ConnectionString Özelliği açılmış bir OdbcConnection nesneden okunduğunda, bağlantı dizesi parola çıkarılarak döndürülür. Bu davranışı değiştiremezsiniz; bu nedenle, uygulama parolayı gerektiriyorsa, çağırmadan Openönce bunu ayrı olarak depolayın.

Dizede belirtilen ayarların çoğunun karşılık gelen salt okunur özellikleri vardır (örneğin, Server=(local)özelliğine DataSource karşılık gelen ). Bu özellikler, bağlantı açıldıktan sonra bir hata algılanana kadar güncelleştirilir. Bu durumda, özelliklerin hiçbiri güncelleştirilmez. OdbcConnection özellikleri (örneğin Database), yalnızca varsayılan ayarları veya içinde ConnectionStringbelirtilen ayarları döndürür.

Microsoft .NET Framework sürüm 1.0'da, bir uygulama yöntemini çağırana Open kadar bağlantı dizesi doğrulaması gerçekleşmez. bağlantı dizesi doğrulamak temel ODBC sürücüsünün sorumluluğundadır. bağlantı dizesi geçersiz veya desteklenmeyen özellikler içeriyorsa, sürücü çalışma zamanında bir OdbcException tetiklenebilir.

Ancak, .NET Framework sürüm 1.1 ve sonraki sürümlerde, özelliği ayarladığınız ConnectionString anda bağlantı dizesi bazı temel doğrulamaları gerçekleşir. Bu sırada veri sağlayıcısı bağlantı dizesi "anahtar sözcük=değer;..." biçimindedir, ancak anahtar sözcüklerin veya değerlerin geçerli olup olmadığını doğrulamaz. Kalan doğrulama, uygulama yöntemini çağırdığında Open temel odbc sürücüsü tarafından gerçekleştirilir.

ODBC bağlantı dizesi aşağıdaki söz dizimine sahiptir:

connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string
empty-string ::=
attribute ::= attribute-keyword=attribute-value | DRIVER=[{]attribute-value[}]
attribute-keyword ::= DSN | UID | PWD
 | driver-defined-attribute-keyword
attribute-value ::= character-string
driver-defined-attribute-keyword ::= identifier

burada character-string sıfır veya daha fazla karakter vardır; identifier bir veya daha fazla karaktere sahiptir; attribute-keyword büyük/küçük harfe duyarlı değildir; attribute-value büyük/küçük harfe duyarlı olabilir ve DSN anahtar sözcüğü değeri yalnızca boşluklardan oluşmaz.

bağlantı dizesi ve başlatma dosyası dil bilgisi nedeniyle, []{}(),;? karakterlerini içeren anahtar sözcüklerden ve öznitelik değerlerinden kaçınılmalıdır. *=!@ ayraç içine alınmaz. DSN anahtar sözcüğü değeri yalnızca boşluklardan oluşamaz ve baştaki boşlukları içermemelidir. Sistem bilgilerinin dil bilgisi nedeniyle anahtar sözcükler ve veri kaynağı adları ters eğik çizgi (\) karakterini içeremez.

Öznitelik noktalı virgül (;) içermediği sürece, uygulamaların Driver anahtar sözcüğünden sonra öznitelik değerinin çevresine küme ayraçları eklemesi gerekmez. Bu durumda küme ayraçları gereklidir. Sürücünün aldığı öznitelik değeri küme ayraçları içeriyorsa, sürücü bunları kaldırmamalıdır ancak döndürülen bağlantı dizesi parçası olmalıdır.

[]{}(),;? karakterlerinden herhangi birini içeren küme ayraçları ({}) içine alınmış bir DSN veya bağlantı dizesi değeri *=!@ sürücüye olduğu gibi geçirilir. Ancak, bu karakterleri bir anahtar sözcükte kullandığınızda, dosya DSN'leri ile çalıştığınızda Sürücü Yöneticisi bir hata döndürür, ancak normal bağlantı dizeleri için bağlantı dizesi sürücüye geçirir. Anahtar sözcük değerinde katıştırılmış küme ayraçları kullanmaktan kaçının.

bağlantı dizesi herhangi bir sayıda sürücü tanımlı anahtar sözcük içerebilir. DRIVER anahtar sözcüğü sistemdeki bilgileri kullanmadığından, sürücünün yalnızca bağlantı dizesi bilgileri kullanarak bir veri kaynağına bağlanabilmesi için yeterli anahtar sözcük tanımlaması gerekir. Sürücü, veri kaynağına bağlanmak için hangi anahtar sözcüklerin gerektiğini tanımlar.

bağlantı dizesi anahtar sözcükler yinelenirse, hangi değerin seçileceğinin garantisi yoktur.

Not

ODBC sürücüsü 1024 karakterden uzun bağlantı dizelerini destekliyorsa, uzunluk sınırı üst sınırını aşmak için bir veri kaynağı adı (DSN) kullanabilirsiniz.

Şunlara uygulanır

Ayrıca bkz.