(0) exportieren Drucken
Alle erweitern

OdbcConnection.ConnectionString-Eigenschaft

Ruft die Zeichenfolge zum Öffnen einer Datenquelle ab oder legt diese fest.

Namespace: System.Data.Odbc
Assembly: System.Data (in system.data.dll)

public override string ConnectionString { get; set; }
/** @property */
public String get_ConnectionString ()

/** @property */
public void set_ConnectionString (String value)

public override function get ConnectionString () : String

public override function set ConnectionString (value : String)

Eigenschaftenwert

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.

Die ConnectionString-Eigenschaft muss mit dem Format der ODBC-Verbindungszeichenfolge soweit wie möglich übereinstimmen. Der ConnectionString kann nur bei einer geschlossenen Verbindung festgelegt werden. Nach dem Festlegen wird er unverändert an den Treiber-Manager und den zugrunde liegenden Treiber übergeben. Aus diesem Grunde muss die Syntax für den ConnectionString genau mit der vom Treiber-Manager und vom zugrunde liegenden Treiber unterstützten Syntax übereinstimmen.

Mithilfe der ConnectionString-Eigenschaft können Sie eine Verbindung mit einer Vielzahl von Datenquellen herstellen. Dies schließt einen ODBC-Datenquellennamen (DSN) ein. Das folgende Beispiel veranschaulicht mehrere mögliche Verbindungszeichenfolgen.

"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"
HinweisHinweis

Der .NET Framework-Datenanbieter für ODBC unterstützt nicht das Schlüsselwort Persist Security Info, das von anderen .NET Framework-Datenanbietern unterstützt wird. Die ConnectionString-Eigenschaft verhält sich aber, als ob Persist Security Info auf false festgelegt wurde. Dies bedeutet, dass Sie das Kennwort nicht von der ConnectionString-Eigenschaft abrufen können, wenn die Verbindung geöffnet wurde. Wenn die ConnectionString-Eigenschaft aus einem geöffneten OdbcConnection-Objekt gelesen wird, wird die Verbindungszeichenfolge ohne das Kennwort zurückgegeben. Sie können dieses Verhalten nicht ändern. Wenn die Anwendung das Kennwort erfordert, speichern Sie es daher separat, bevor Sie Open aufrufen.

Viele der in der Zeichenfolge angegebenen Einstellungen weisen entsprechende schreibgeschützte Eigenschaften auf (z. B. entspricht Server=(local) der DataSource-Eigenschaft). Diese Eigenschaften werden nach dem Öffnen der Verbindung aktualisiert, sofern kein Fehler aufgetreten ist. In diesem Fall wird keine der Eigenschaften aktualisiert. OdbcConnection-Eigenschaften (z. B. Database) geben nur Standardeinstellungen oder im ConnectionString angegebene Einstellungen zurück.

In Microsoft .NET Framework, Version 1.0, wird vor dem Aufrufen der Open-Methode durch die Anwendung keine Validierung der Verbindungszeichenfolge ausgeführt. Der zugrunde liegende ODBC-Treiber ist zuständig für die Überprüfung der Verbindungszeichenfolge. Wenn die Verbindungszeichenfolge ungültige oder nicht unterstützte Eigenschaften enthält, kann der Treiber zur Laufzeit eine OdbcException auslösen.

In .NET Framework, Version 1.1 oder höher, wird hingegen bereits beim Festlegen der ConnectionString-Eigenschaft eine grundlegende Validierung der Verbindungszeichenfolge ausgeführt. Zu diesem Zeitpunkt überprüft der Datenprovider, ob die Verbindungszeichenfolge das Format "Schlüsselwort=Wert;..." aufweist, es wird jedoch nicht überprüft, ob die Schlüsselwörter oder Werte gültig sind. Der Rest der Überprüfung wird vom zugrunde liegenden ODBC-Treiber ausgeführt, wenn die Anwendung die Open-Methode aufruft.

Eine ODBC-Verbindungszeichenfolge weist 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

Dabei enthält character-string 0 (null) oder mehr Zeichen, identifier enthält ein oder mehr Zeichen, bei attribute-keyword wird die Groß- und Kleinschreibung nicht berücksichtigt, bei attribute-value kann die Groß- und Kleinschreibung berücksichtigt werden, und der Wert des Schlüsselworts DSN besteht nicht nur aus Leerzeichen.

Wegen der Grammatik für Verbindungszeichenfolgen und Initialisierungsdateien dürfen keine Schlüsselwörter und Attributwerte verwendet werden, bei denen die Zeichen []{}(),;?*=!@ nicht in geschweifte Klammern eingeschlossen sind. Der Wert des Schlüsselwortes DSN darf nicht nur aus Leerzeichen bestehen, und er darf keine vorangestellten Leerzeichen aufweisen. Aufgrund der Grammatik von Systeminformationen dürfen Schlüsselwörter und Namen von Datenquellen keinen umgekehrten Schrägstrich (\) enthalten.

Der Attributwert nach dem Schlüsselwort Driver muss durch die Anwendung nicht in geschweifte Klammern gesetzt zu werden, es sei denn, das Attribut enthält ein Semikolon (;). In diesem Fall sind die geschweiften Klammern erforderlich. Wenn der vom Treiber empfangene Attributwert geschweifte Klammern enthält, dürfen diese vom Treiber nicht entfernt werden. Stattdessen müssen sie als Teil der zurückgegebenen Verbindungszeichenfolge beibehalten werden.

Ein in geschweifte Klammern ({}) eingeschlossener DSN-Wert oder Verbindungszeichenfolgenwert, der eines der Zeichen []{}(),;?*=!@ enthält, wird unverändert an den Treiber übergeben. Wenn diese Zeichen jedoch in einem Schlüsselwort verwendet werden und der Treiber-Manager Datei-DSNs verarbeitet, wird ein Fehler zurückgegeben. Bei regulären Verbindungszeichenfolgen übergibt er jedoch die Verbindungszeichenfolge an den Treiber. Verwenden Sie keine eingebetteten geschweiften Klammern im Wert eines Schlüsselwortes.

Die Verbindungszeichenfolge kann eine beliebige Anzahl von treiberdefinierten Schlüsselwörtern enthalten. Da das Schlüsselwort DRIVER keine Informationen des Systems verwendet, muss vom Treiber eine ausreichende Anzahl von Schlüsselwörtern definiert werden, sodass die Verbindung mit einer Datenquelle ausschließlich anhand der Informationen in der Verbindungszeichenfolge hergestellt werden kann. Der Treiber definiert, welche Schlüsselwörter zum Herstellen einer Verbindung mit der Datenquelle erforderlich sind.

Wenn Schlüsselwörter in der Verbindungszeichenfolge wiederholt werden, kann nicht vorhergesagt werden, welcher Wert ausgewählt wird.

HinweisHinweis

Wenn ein ODBC-Treiber Verbindungszeichenfolgen mit einer größeren Länge als 1024 Zeichen unterstützt, können Sie die Längenbeschränkung mit einem DSN (Data Source Name, Datenquellenname) überschreiten.

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

.NET Framework

Unterstützt in: 2.0, 1.1
Anzeigen:
© 2014 Microsoft