OdbcConnection.ConnectionString Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Zeichenfolge zum Öffnen einer Datenquelle ab oder legt diese fest.
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
Eigenschaftswert
Die Verbindungszeichenfolge für ODBC-Treiber mit den erforderlichen Einstellungen zum erstmaligen Herstellen der Verbindung (z. B. dem Namen der Datenquelle). Der Standardwert ist eine leere Zeichenfolge (""). Die maximale Länge beträgt 1024 Zeichen.
Implementiert
- Attribute
Hinweise
Die ConnectionString Eigenschaft ist so konzipiert, dass das ODBC-Verbindungszeichenfolgenformat so genau wie möglich übereinstimmt. Die ConnectionString Kann nur festgelegt werden, wenn die Verbindung geschlossen wird und sobald sie festgelegt wird, unverändert, an den Treiber-Manager und den zugrunde liegenden Treiber übergeben wird. Daher muss die Syntax für die ConnectionString Syntax genau übereinstimmen, was der Treiber-Manager und die zugrunde liegende Treiberunterstützung unterstützen.
Sie können die ConnectionString Eigenschaft verwenden, um eine Verbindung mit einer Vielzahl von Datenquellen herzustellen. Dies umfasst einen ODBC-Datenquellennamen (DSN). Im folgenden Beispiel werden mehrere mögliche Verbindungszeichenfolgen veranschaulicht.
"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"
Hinweis
Die .NET Framework Datenanbieter für ODBC unterstützt nicht das Persist Security Info Schlüsselwort, das von anderen .NET Framework Datenanbietern unterstützt wird. Die Eigenschaft verhält sich jedoch so, ConnectionString als ob Persist Security Info sie festgelegt falsewurde. Dies bedeutet, dass Sie das Kennwort nicht aus der ConnectionString Eigenschaft abrufen können, wenn die Verbindung geöffnet wurde. Wenn die ConnectionString Eigenschaft aus einem OdbcConnection objekt gelesen wird, das geöffnet wurde, wird die Verbindungszeichenfolge ohne das Kennwort zurückgegeben. Sie können dieses Verhalten nicht ändern; Wenn die Anwendung daher das Kennwort benötigt, speichern Sie es separat vor dem Aufrufen Open.
Viele der in der Zeichenfolge angegebenen Einstellungen verfügen über entsprechende schreibgeschützte Eigenschaften (z. B Server=(local). , die der DataSource Eigenschaft entspricht). Diese Eigenschaften werden nach dem Öffnen der Verbindung aktualisiert, außer wenn ein Fehler erkannt wird. In diesem Fall werden keine der Eigenschaften aktualisiert. OdbcConnection Eigenschaften (z. B Database. ) geben nur Standardeinstellungen oder diese einstellungen zurück, die in der ConnectionString.
In der Microsoft .NET Framework Version 1.0 tritt die Überprüfung der Verbindungszeichenfolge erst auf, wenn eine Anwendung die Open Methode aufruft. Es ist die Verantwortung des zugrunde liegenden ODBC-Treibers, die Verbindungszeichenfolge zu überprüfen. Wenn die Verbindungszeichenfolge ungültige oder nicht unterstützte Eigenschaften enthält, kann der Treiber eine Laufzeit auslösen OdbcException .
In den versionen .NET Framework Version 1.1 und höher tritt jedoch eine grundlegende Überprüfung der Verbindungszeichenfolge auf, sobald Sie die ConnectionString Eigenschaft festlegen. Zu diesem Zeitpunkt überprüft der Datenanbieter, dass die Verbindungszeichenfolge dem "keyword=value;..." entspricht. format, aber es überprüft nicht, ob Schlüsselwörter oder Werte gültig sind. Die verbleibende Überprüfung wird vom zugrunde liegenden ODBC-Treiber ausgeführt, wenn die Anwendung die Open Methode aufruft.
Eine ODBC-Verbindungszeichenfolge weist die folgende Syntax auf:
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
wenn character-string null oder mehr Zeichen vorhanden sind; mindestens ein Zeichen enthält; attribute-keyword identifier ist keine Groß-/Kleinschreibung beachtet; attribute-value kann Groß-/Kleinschreibung beachtet werden; und der Wert des DSN-Schlüsselworts besteht nicht nur aus Leerzeichen.
Aufgrund der Verbindungszeichenfolgen- und Initialisierungsdatei-Grammatik sollten Schlüsselwörter und Attributwerte vermieden werden, die die Zeichen []{}();enthalten? *=!@ nicht in geschweifte Klammern eingeschlossen. Der Wert des DSN-Schlüsselworts darf nicht nur aus Leerzeichen bestehen und sollte keine führenden Leerzeichen enthalten. Aufgrund der Grammatik der Systeminformationen können Schlüsselwörter und Datenquellennamen nicht das umgekehrte Schrägstrichzeichen (\) enthalten.
Anwendungen müssen Klammern nicht um den Attributwert nach dem Driver-Schlüsselwort hinzufügen, es sei denn, das Attribut enthält ein Semikolon (;), in diesem Fall sind die Geschweifte erforderlich. Wenn der attributwert, den der Treiber empfängt, geschweifte Klammern enthält, sollte der Treiber diese nicht entfernen, sondern Teil der zurückgegebenen Verbindungszeichenfolge sein.
Ein DSN- oder Verbindungszeichenfolgenwert, der in geschweifte Klammern ({}) eingeschlossen ist, die eines der Zeichen []{}(),;? *=!@ wird an den Treiber übergeben. Wenn Sie diese Zeichen jedoch in einem Schlüsselwort verwenden, gibt der Treiber-Manager einen Fehler zurück, wenn Sie mit Datei-DSNs arbeiten, aber die Verbindungszeichenfolge an den Treiber für normale Verbindungszeichenfolgen übergibt. Vermeiden Sie die Verwendung eingebetteter Geschweifte in einem Schlüsselwortwert.
Die Verbindungszeichenfolge kann eine beliebige Anzahl von vom Treiber definierten Schlüsselwörtern enthalten. Da das DRIVER-Schlüsselwort keine Informationen aus dem System verwendet, muss der Treiber genügend Schlüsselwörter definieren, damit ein Treiber eine Verbindung mit einer Datenquelle herstellen kann, indem nur die Informationen in der Verbindungszeichenfolge verwendet werden. Der Treiber definiert, welche Schlüsselwörter erforderlich sind, um eine Verbindung mit der Datenquelle herzustellen.
Wenn Schlüsselwörter in der Verbindungszeichenfolge wiederholt werden, gibt es keine Garantie, welche Werte ausgewählt werden.
Hinweis
Wenn ein ODBC-Treiber Verbindungszeichenfolgen mit länger als 1024 Zeichen unterstützt, können Sie einen Datenquellennamen (DSN) verwenden, um die maximale Längenbeschränkung zu überschreiten.