OdbcConnection.ConnectionString OdbcConnection.ConnectionString OdbcConnection.ConnectionString OdbcConnection.ConnectionString Property

Definition

Ruft die Zeichenfolge zum Öffnen einer Datenquelle ab oder legt diese fest.Gets or sets the string used to open a data source.

public:
 property System::String ^ ConnectionString { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.SettingsBindable(true)]
public string ConnectionString { get; set; }
member this.ConnectionString : string with get, set
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).The ODBC driver connection string that includes settings, such as the data source name, needed to establish the initial connection. Der Standardwert ist eine leere Zeichenfolge („“).The default value is an empty string (""). Die maximale Länge beträgt 1024 Zeichen.The maximum length is 1024 characters.

Hinweise

Die ConnectionString -Eigenschaft ist so konzipiert, dass Sie dem ODBC-Verbindungs Zeichenfolgen-Format möglichst genau entspricht.The ConnectionString property is designed to match ODBC connection string format as closely as possible. Die ConnectionString kann nur festgelegt werden, wenn die Verbindung geschlossen wird, und sobald Sie festgelegt ist, wird Sie an den Treiber-Manager und den zugrunde liegenden Treiber übermittelt.The ConnectionString can be set only when the connection is closed, and as soon as it is set it is passed, unchanged, to the Driver Manager and the underlying driver. Daher ConnectionString muss die Syntax für genau mit dem Treiber-Manager und den zugrunde liegenden Treibern übereinstimmen.Therefore, the syntax for the ConnectionString must exactly match what the Driver Manager and underlying driver support.

Sie können die ConnectionString -Eigenschaft verwenden, um eine Verbindung mit einer Vielzahl von Datenquellen herzustellen.You can use the ConnectionString property to connect to a variety of data sources. Dies schließt einen ODBC-Datenquellen Namen (DSN) ein.This includes an ODBC data source name (DSN). Im folgenden Beispiel werden mehrere mögliche Verbindungs Zeichenfolgen veranschaulicht.The following example illustrates several possible connection strings.

"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

Das .NET Framework Datenanbieter für ODBC unterstützt das Persist Security Info Schlüsselwort nicht, das von anderen .NET Framework Datenanbietern unterstützt wird.The .NET Framework Data Provider for ODBC does not support the Persist Security Info keyword that is supported by other .NET Framework data providers. Die ConnectionString -Eigenschaft verhält sich jedoch so Persist Security Info , als ob falseauf festgelegt wäre.However, the ConnectionString property behaves as if Persist Security Info were set to false. Dies bedeutet, dass Sie das Kennwort nicht aus ConnectionString der-Eigenschaft abrufen können, wenn die Verbindung geöffnet wurde.This means that you cannot retrieve the password from the ConnectionString property if the connection has been opened. Wenn die ConnectionString -Eigenschaft aus einem OdbcConnection Objekt gelesen wird, das geöffnet wurde, wird die Verbindungs Zeichenfolge abzüglich des Kennworts zurückgegeben.When the ConnectionString property is read from an OdbcConnection object that has been opened, the connection string is returned minus the password. Dieses Verhalten kann nicht geändert werden. Wenn die Anwendung das Kennwort benötigt, speichern Sie diese separat, bevor OpenSie aufrufen.You cannot change this behavior; therefore, if the application requires the password, store it separately before calling Open.

Viele der in der-Zeichenfolge angegebenen Einstellungen verfügen über entsprechende schreibgeschützte Eigenschaften (z Server=(local). b., die der DataSource -Eigenschaft entsprechen).Many of the settings specified in the string have corresponding read-only properties (for example, Server=(local), which corresponds to the DataSource property). Diese Eigenschaften werden aktualisiert, nachdem die Verbindung geöffnet wurde, es sei denn, es wird ein Fehler erkannt.These properties are updated after the connection is opened, except when an error is detected. In diesem Fall wird keine der Eigenschaften aktualisiert.In this case, none of the properties are updated. OdbcConnectionEigenschaften (z Database. b.) geben nur die Standardeinstellungen oder die Einstellungen ConnectionStringzurück, die in angegeben sind.OdbcConnection properties (such as Database) return only default settings or those settings specified in the ConnectionString.

In Microsoft .NET Framework Version 1,0 wird die Überprüfung der Verbindungs Zeichenfolge erst ausgeführt, wenn eine Anwendung Open die-Methode aufruft.In the Microsoft .NET Framework version 1.0, validation of the connection string does not occur until an application calls the Open method. Es liegt in der Verantwortung des zugrunde liegenden ODBC-Treibers, die Verbindungs Zeichenfolge zu validieren.It is the responsibility of the underlying ODBC driver to validate the connection string. Wenn die Verbindungs Zeichenfolge ungültige oder nicht unterstützte Eigenschaften enthält, gibt OdbcException der Treiber möglicherweise zur Laufzeit einen aus.If the connection string contains invalid or unsupported properties, the driver may raise an OdbcException at run time.

In der .NET Framework Version 1,1 und höheren Versionen tritt jedoch eine grundlegende Überprüfung der Verbindungs Zeichenfolge auf, sobald Sie die ConnectionString -Eigenschaft festlegen.However, in the .NET Framework version 1.1 and later versions, some basic validation of the connection string occurs as soon as you set the ConnectionString property. Zu diesem Zeitpunkt überprüft der Datenanbieter, ob die Verbindungs Zeichenfolge dem "Schlüsselwort = Wert;..." entspricht. Formatieren, aber es wird nicht überprüft, ob Schlüsselwörter oder Werte gültig sind.At that time, the data provider verifies that the connection string meets the "keyword=value;..." format, but it does not verify whether keywords or values are valid. Die verbleibende Überprüfung wird vom zugrunde liegenden ODBC-Treiber ausgeführt, wenn Open die Anwendung die-Methode aufruft.The remaining verification is performed by the underlying ODBC driver when the application calls the Open method.

Eine ODBC-Verbindungs Zeichenfolge weist die folgende Syntax auf:An ODBC connection string has the following syntax:

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  

wobei character-string NULL oder mehr Zeichen enthält; identifier weist mindestens ein Zeichen auf. attribute-keyword beachtet die Groß-/Kleinschreibung nicht attribute-value die Groß-/Kleinschreibung muss beachtet werden, und der Wert des DSN-Schlüssel Worts besteht nicht nur aus Leerzeichen.where character-string has zero or more characters; identifier has one or more characters; attribute-keyword is not case sensitive; attribute-value can be case sensitive; and the value of the DSN keyword does not consist only of blanks.

Aufgrund der Grammatik der Verbindungs Zeichenfolge und Initialisierungsdatei sollten Schlüsselwörter und Attributwerte vermieden werden, die die{}Zeichen [] (),; enthalten. * =! @ ist nicht in geschweifte Klammern eingeschlossen.Because of connection string and initialization file grammar, keywords and attribute values should be avoided that contain the characters []{}(),;?*=!@ not enclosed with braces. Der Wert des DSN-Schlüssel Worts darf nicht nur aus Leerzeichen bestehen und darf keine führenden Leerzeichen enthalten.The value of the DSN keyword cannot consist only of blanks and should not contain leading blanks. Aufgrund der Grammatik der Systeminformationen dürfen Schlüsselwörter und Datenquellen Namen keinen umgekehrten Schrägstrich (\) enthalten.Because of the grammar of the system information, keywords and data source names cannot contain the backslash (\) character.

Anwendungen müssen nach dem Treiber Schlüsselwort keine geschweiften Klammern um den Attribut Wert hinzufügen, es sei denn, das Attribut enthält ein Semikolon (;). in diesem Fall sind die geschweiften Klammern erforderlich.Applications do not have to add braces around the attribute value after the Driver keyword unless the attribute contains a semicolon (;), in which case the braces are required. Wenn der vom Treiber empfangene Attribut Wert geschweifte Klammern enthält, sollte der Treiber Sie nicht entfernen, sondern muss Teil der zurückgegebenen Verbindungs Zeichenfolge sein.If the attribute value that the driver receives includes braces, the driver should not remove them but they should be part of the returned connection string.

Ein DSN-oder Verbindungs Zeichen folgen Wert, der{}in geschweifte Klammern () eingeschlossen ist,{}die ein beliebiges Zeichen [] (),;? * =! @ wird an den Treiber intakt übermittelt.A DSN or connection string value enclosed with braces ({}) that contains any of the characters []{}(),;?*=!@ is passed intact to the driver. 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 Verbindungs Zeichenfolge für reguläre Verbindungs Zeichenfolgen an den Treiber übergibt.However, when you use these characters in a keyword, the Driver Manager returns an error when you work with file DSNs, but passes the connection string to the driver for regular connection strings. Vermeiden Sie die Verwendung eingebetteter Klammern in einem Schlüsselwort Wert.Avoid using embedded braces in a keyword value.

Die Verbindungs Zeichenfolge kann eine beliebige Anzahl von Treiber definierten Schlüsselwörtern enthalten.The connection string may include any number of driver-defined keywords. Da das Treiber Schlüsselwort keine Informationen aus dem System verwendet, muss der Treiber genügend Schlüsselwörter definieren, damit ein Treiber nur mit den Informationen in der Verbindungs Zeichenfolge eine Verbindung mit einer Datenquelle herstellen kann.Because the DRIVER keyword does not use information from the system, the driver must define enough keywords so that a driver can connect to a data source using only the information in the connection string. Der Treiber definiert, welche Schlüsselwörter erforderlich sind, um eine Verbindung mit der Datenquelle herzustellen.The driver defines which keywords are required to connect to the data source.

Wenn ein Schlüsselwort in der Verbindungs Zeichenfolge wiederholt wird, gibt es keine Garantie dafür, welcher Wert ausgewählt wird.If any keywords are repeated in the connection string, there is no guarantee which value will be selected.

Hinweis

Wenn ein ODBC-Treiber Verbindungs Zeichenfolgen mit mehr als 1024 Zeichen unterstützt, können Sie einen Datenquellen Namen (DSN) verwenden, um die maximale Längen Beschränkung zu überschreiten.If an ODBC driver supports connection strings longer than 1024 characters, you can use a data source name (DSN) to exceed the maximum length limitation.

Gilt für:

Siehe auch