Verwenden von Schlüsselwörtern für Verbindungszeichenfolgen mit SQL Server Native Client

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Wichtig

Der SQL Server Native Client (häufig abgekürzt mit SNAC) wurde aus SQL Server 2022 (16.x) und SQL Server Management Studio 19 (SSMS) entfernt. Der SQL Server Native Client (SQLNCLI oder SQLNCLI11) und der Microsoft OLE DB-Legacyanbieter für SQL Server (SQLOLEDB) werden für neue Anwendungsentwicklungen nicht empfohlen. Verwenden Sie in Zukunft den neuen Microsoft OLE DB-Treiber für SQL Server (MSOLEDBSQL) oder den neuesten Microsoft ODBC Driver for SQL Server. Informationen zu SQLNCLI, das als Komponente von SQL Server Datenbank-Engine (Versionen 2012 bis 2019) ausgeliefert wird, finden Sie in dieser Supportlebenszyklus-Ausnahme.

Einige SQL Server Native Client-APIs verwenden Verbindungszeichenfolgen, um Verbindungsattribute anzugeben. Verbindungszeichenfolgen sind Listen von Schlüsselwörtern und zugehörigen Werten. Jedes Schlüsselwort bezeichnet ein spezielles Verbindungsattribut.

Weitere Informationen finden Sie unter Verwenden von Verbindungszeichenfolgenschlüsselwörtern mit OLE DB-Treiber für SQL Server.

Hinweis

SQL Server Native Client ermöglicht Mehrdeutigkeiten in Verbindungszeichenfolgen, um die Abwärtskompatibilität aufrechtzuerhalten (z. B. können einige Schlüsselwörter mehrmals angegeben werden, und in Konflikt stehende Schlüsselwörter können mit einer Lösung basierend auf Position oder Rang zulässig sein). Es empfiehlt sich, Anwendungen so zu ändern, dass sie SQL Server Native Client verwenden, um jede Abhängigkeit von mehrdeutigen Verbindungszeichenfolgen zu beseitigen.

In den folgenden Abschnitten werden die Schlüsselwörter beschrieben, die mit dem SQL Server Native Client OLE DB-Anbieter, dem SQL Server Native Client ODBC-Treiber und ActiveX Data Objects (ADO) verwendet werden können, wenn SQL Server Native Client als Datenanbieter verwendet wird.

Verbindungszeichenfolgen-Schlüsselwörter für den ODBC-Treiber

ODBC-Anwendungen verwenden Verbindungszeichenfolgen als Parameter für die Funktionen SQLDriverConnect und SQLBrowseConnect .

Die für ODBC verwendeten Verbindungszeichenfolge haben folgende Syntax:

connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string

empty-string ::=

attribute ::= attribute-keyword=[{]attribute-value[}]

attribute-value ::= character-string

attribute-keyword ::= identifier

Attributwerte können optional in geschweifte Klammern eingeschlossen werden, und es wird empfohlen, dies zu tun. Dadurch werden Probleme vermieden, wenn Attributwerte andere Zeichen als alphanumerische Zeichen enthalten. Da die erste rechte geschweifte Klammer als Endzeichen des Werts interpretiert wird, können Werte keine rechten geschweiften Klammern enthalten.

In der folgenden Tabelle werden die Schlüsselwörter beschrieben, die in einer ODBC-Verbindungszeichenfolge verwendet werden können.

Schlüsselwort BESCHREIBUNG
Addr Synonym für "Address".
Adresse Die Netzwerkadresse des Servers, auf dem eine Instanz von SQL Server ausgeführt wird. Address ist normalerweise der Netzwerkname des Servers, kann jedoch auch ein anderer Name sein, beispielsweise der einer Pipe, einer IP-Adresse oder eines TCP/IP-Ports und einer Socketadresse.

Wenn Sie eine IP-Adresse angeben, stellen Sie im SQL Server-Konfigurations-Manager sicher, dass die Protokolle für TCP/IP oder Named Pipes aktiviert sind.

Der Wert von Address hat Vorrang vor dem Wert, der bei Verwendung von SQL Server Native Client in ODBC-Verbindungszeichenfolgen an den Server übergeben wird. Zudem ist zu beachten, dass mit der Angabe Address=; eine Verbindung mit dem im Server-Schlüsselwort angegebenen Server hergestellt wird. Die Angaben Address= ;, Address=.;, Address=localhost; und Address=(local); führen dagegen zu einer Verbindungsherstellung mit dem lokalen Server.

Die vollständige Syntax für das Address-Schlüsselwort ist folgendermaßen:

[protocol:]Address[,port |\pipe\pipename]

Protokoll kann Folgendes sein: tcp (TCP/IP), lpc (Shared Memory) oder np (Named Pipes). Weitere Informationen zu Protokollen finden Sie unter Konfigurieren von Clientprotokollen.

Wenn weder das Protokoll noch der Netzwerk-Schlüsselwort (keyword) angegeben ist, verwenden SQL Server Native Client die in SQL Server-Konfigurations-Manager angegebene Protokollreihenfolge.

port gibt den Port auf dem angegebenen Server an, zu dem eine Verbindung hergestellt werden soll. In der Standardeinstellung verwendet SQL Server den Port 1433.
AnsiNPW Bei Angabe von "yes" verwendet der Treiber die im ANSI-Standard definierten Verhaltensweisen zum Behandeln von NULL-Vergleichen, Auffüllung mit Zeichendaten, Warnungen und NULL-Verkettungen. Bei Angabe von "no", werden die im ANSI-Standard definierten Verhaltensweisen nicht verwendet. Weitere Informationen zum ANSI NPW-Verhalten finden Sie unter Auswirkungen von ISO-Optionen.
APP Name der Anwendung, die SQLDriverConnect aufruft (optional). Falls angegeben, wird dieser Wert in der spalte master.dbo.sysprocesses program_name gespeichert und vonsp_who und den APP_NAME-Funktionen zurückgegeben.
ApplicationIntent Deklariert den Arbeitsauslastungstyp der Anwendung beim Herstellen einer Verbindung mit einem Server. Mögliche Werte sind ReadOnly und ReadWrite. Der Standardwert lautet ReadWrite. Beispiel:

ApplicationIntent=ReadOnly

Weitere Informationen zur Unterstützung SQL Server Native Client für Always On Verfügbarkeitsgruppen finden Sie unter SQL Server Native Client Support für Hochverfügbarkeit, Notfallwiederherstellung.
AttachDBFileName Name der primären Datei einer anfügbaren Datenbank. Geben Sie den vollständigen Pfad an, und versehen Sie sämtliche umgekehrten Schrägstriche (\) mit Escapezeichen, wenn eine C-Zeichenfolgenvariable verwendet wird:

AttachDBFileName=c:\\MyFolder\\MyDB.mdf

Diese Datenbank wird angefügt und als Standarddatenbank für die Verbindung verwendet. Um AttachDBFileName zu verwenden, müssen Sie auch den Datenbanknamen entweder im SQLDriverConnect DATABASE-Parameter oder im SQL_COPT_CURRENT_CATALOG-Verbindungsattribute angeben. Wenn die Datenbank zuvor angefügt wurde, fügt SQL Server sie nicht erneut an. Die angefügte Datenbank wird als Standard für die Verbindung verwendet.
AutoTranslate Bei der Angabe von "yes" werden ANSI-Zeichenfolgen übersetzt, die zwischen Client und Server übermittelt werden, indem sie über Unicode konvertiert werden, um so Probleme bei der Zuordnung von Sonderzeichen zwischen den Codeseiten auf Client und Server zu minimieren.

Client-SQL_C_CHAR Daten, die an eine SQL Server char, varchar oder textvariable, parameter oder spalte gesendet werden, werden mithilfe der Client-ANSI-Codepage (ACP) vom Zeichen in Unicode konvertiert und dann mit dem ACP des Servers von Unicode in Zeichen konvertiert.

SQL Server Char-, Varchar- oder Textdaten, die an eine Client-SQL_C_CHAR Variable gesendet werden, werden mithilfe des Server ACP von Zeichen in Unicode konvertiert und dann mit dem Client ACP von Unicode in Zeichen konvertiert.

Diese Konvertierungen werden auf dem Client vom SQL Server Native Client ODBC-Treiber ausgeführt. Dies erfordert, dass auf dem Client die gleiche ACP verfügbar ist, die auf dem Server verwendet wird.

Diese Einstellungen haben keine Auswirkungen auf die Konvertierungen, die für diese Übertragungen stattfinden:

* Unicode SQL_C_WCHAR Clientdaten, die an char, varchar oder Text auf dem Server gesendet werden.

* char-, varchar- oder Textserverdaten , die an eine Unicode-SQL_C_WCHAR-Variable auf dem Client gesendet werden.

* ANSI SQL_C_CHAR Clientdaten, die an Unicode nchar, nvarchar oder ntext auf dem Server gesendet werden.

* Unicode-nchar-, nvarchar- oder ntext-Serverdaten , die an eine ANSI-SQL_C_CHAR-Variable auf dem Client gesendet werden.

Bei Angabe von "no" wird keine Zeichenübersetzung durchgeführt.

Der SQL Server Native Client ODBC-Treiber übersetzt keine Client-ANSI-Zeichen SQL_C_CHAR Daten, die an char, varchar oder Textvariablen, Parameter oder Spalten auf dem Server gesendet werden. Es wird keine Übersetzung für char-, varchar- oder Textdaten durchgeführt, die vom Server an SQL_C_CHAR Variablen auf dem Client gesendet werden.

Wenn der Client und SQL Server unterschiedliche ACPs verwenden, werden erweiterte Zeichen möglicherweise falsch interpretiert.
Datenbank Name der Standarddatenbank SQL Server für die Verbindung. Wenn Datenbank nicht angegeben ist, wird die für die Anmeldung definierte Standarddatenbank verwendet. Die Standarddatenbank der ODBC-Datenquelle überschreibt die für die Anmeldung definierte Standarddatenbank. Die Datenbank muss eine vorhandene Datenbank sein, es sei denn , AttachDBFileName wird ebenfalls angegeben. Wenn AttachDBFileName ebenfalls angegeben wird, wird die primäre Datei, auf die sie verweist, angefügt und dem von Database angegebenen Datenbanknamen zugewiesen.
Treiber Name des Treibers, der von SQLDrivers zurückgegeben wird. Der Schlüsselwort (keyword) Wert für den SQL Server Native Client ODBC-Treiber ist "{SQL Server Native Client 11.0}". Der Server Schlüsselwort (keyword) ist erforderlich, wenn Driver angegeben ist und DriverCompletion auf SQL_DRIVER_NOPROMPT festgelegt ist.

Weitere Informationen zu Treibernamen finden Sie unter Verwenden des SQL Server Native Client Header- und Bibliotheksdateien.
DSN Der Name einer vorhandenen ODBC-Benutzer- oder Systemdatenquelle. Diese Schlüsselwort (keyword) überschreibt alle Werte, die in den Schlüsselwörtern Server, Network und Address angegeben werden können.
Encrypt Gibt an, ob Daten vor dem Senden über das Netzwerk verschlüsselt werden sollen. Mögliche Werte sind "yes"/"mandatory"(18.0+), "no"/"optional" (18.0+) und "strict" (18.0+). Der Standardwert ist "ja" in Version 18.0 und "nein" in früheren Versionen.
Fallback Diese Schlüsselwort (keyword) ist veraltet, und ihre Einstellung wird vom SQL Server Native Client ODBC-Treiber ignoriert.
Failover_Partner Name des Failoverpartnerservers, der verwendet werden soll, wenn keine Verbindung mit dem primären Server hergestellt werden kann.
FailoverPartnerSPN Der SPN für den Failoverpartner. Der Standardwert ist eine leere Zeichenfolge. Eine leere Zeichenfolge bewirkt, dass SQL Server Native Client den standardmäßigen, vom Treiber generierten SPN verwendet.
FileDSN Der Name einer vorhandenen ODBC-Dateidatenquelle.
Sprache SQL Server Sprachnamen (optional). SQL Server können Nachrichten für mehrere Sprachen in sysmessages speichern. Wenn Sie eine Verbindung mit einer SQL Server mit mehreren Sprachen herstellen, gibt Language an, welcher Satz von Nachrichten für die Verbindung verwendet wird.
MARS_Connection Ermöglicht oder unterbindet die Verwendung von mehreren aktiven Resultsets (MARS) bei einer Verbindung. Gültige Werte sind "yes" und "no". Der Standardwert ist "no".
MultiSubnetFailover Geben Sie immer multiSubnetFailover=Yes an, wenn Sie eine Verbindung mit dem Verfügbarkeitsgruppenlistener einer SQL Server Verfügbarkeitsgruppe oder einer SQL Server Failoverclusterinstanz herstellen. multiSubnetFailover=Yes konfiguriert SQL Server Native Client, um eine schnellere Erkennung und Verbindung mit dem (derzeit) aktiven Server zu ermöglichen. Mögliche Werte sind Yes und No. Der Standardwert ist No. Beispiel:

MultiSubnetFailover=Yes

Weitere Informationen zur Unterstützung SQL Server Native Client für Always On Verfügbarkeitsgruppen finden Sie unter SQL Server Native Client Support für Hochverfügbarkeit, Notfallwiederherstellung.
Net Synonym für "Network".
Network Gültige Werte sind dbnmpntw (Named Pipes) und dbmssocn (TCP/IP).

Es ist ein Fehler, einen Wert für die Netzwerk-Schlüsselwort (keyword) und ein Protokollpräfix auf dem Server Schlüsselwort (keyword) anzugeben.
PWD Das Kennwort für das im UID-Parameter angegebene SQL Server Anmeldekonto. PWD muss nicht angegeben werden, wenn die Anmeldung über ein NULL-Kennwort verfügt oder die Windows-Authentifizierung (Trusted_Connection = yes) verwendet wird.
QueryLog_On Bei Angabe von "yes", wird die Protokollierung von langwierigen Abfragen für die Verbindung aktiviert. Bei Angabe von "no" werden keine Daten über langwierige Abfragen protokolliert.
QueryLogFile Vollständiger Pfad- und Dateiname einer Datei, die zur Protokollierung von Daten über Abfragen mit langer Ausführungsdauer verwendet werden soll.
QueryLogTime Ziffernzeichenfolge, die den Schwellenwert (in Millisekunden) zum Protokollieren von langwierigen Abfragen angibt. Jede Abfrage, die nicht innerhalb eines gewissen Zeitraums eine Antwort vom Server erhält, wird in die Protokolldatei für Abfragen langer Ausführungsdauer geschrieben.
QuotedId Wenn "ja" QUOTED_IDENTIFIERS für die Verbindung ON festgelegt wird, verwendet SQL Server die ISO-Regeln für die Verwendung von Anführungszeichen in SQL-Anweisungen. Andernfalls wird QUOTED_IDENTIFIERS für die Verbindung auf OFF gesetzt. SQL Server folgen dann den älteren Transact-SQL-Regeln in Bezug auf die Verwendung von Anführungszeichen in SQL-Anweisungen. Weitere Informationen finden Sie unter Auswirkungen von ISO-Optionen.
Regional Bei "Ja" verwendet der SQL Server Native Client ODBC-Treiber Clienteinstellungen, wenn Währungs-, Datums- und Uhrzeitdaten in Zeichendaten konvertiert werden. Die Konvertierung ist unidirektional. Der Treiber erkennt nur ODBC-Standardformate in zu konvertierenden Datumszeichenfolgen oder Währungswerten, beispielsweise Parameter in einer INSERT- oder UPDATE-Anweisung. Bei Angabe von "no" verwendet der Treiber ODBC-Standardzeichenfolgen zur Darstellung von Währungs-, Datums- und Zeitdaten, die in Zeichendaten konvertiert werden.
SaveFile Der Name einer ODBC-Datenquellendatei, in der die Attribute der aktuellen Verbindung gespeichert werden, wenn die Verbindung erfolgreich hergestellt wurde.
Server Der Name einer SQL Server-Instanz. Als Wert muss entweder der Name eines Servers im Netzwerk, eine IP-Adresse oder der Aliasname eines SQL Server-Konfigurations-Managers angegeben werden.

Das Address-Schlüsselwort setzt das Server-Schlüsselwort außer Kraft.

Sie können eine Verbindung mit der Standardinstanz auf dem lokalen Server herstellen, indem Sie eine der folgenden Optionen angeben:

Server=.;

Server=.;

Server=(local);

Server=(local);

Server=(localhost);

Server=(localdb)\instancename;

Weitere Informationen zur LocalDB-Unterstützung finden Sie unter SQL Server Native Client Support für LocalDB.

Um eine benannte Instanz von SQL Server anzugeben, fügen Sie \Instanzname an.

Ohne Angabe eines Servers wird eine Verbindung mit der Standardinstanz auf dem lokalen Computer hergestellt.

Wenn Sie eine IP-Adresse angeben, stellen Sie im SQL Server-Konfigurations-Manager sicher, dass die Protokolle für TCP/IP oder Named Pipes aktiviert sind.

Die vollständige Syntax für das Server-Schlüsselwort ist folgendermaßen:

Server= [Protokoll: ]Server[ ,Port]

Protokoll kann Folgendes sein: tcp (TCP/IP), lpc (Shared Memory) oder np (Named Pipes).

Im folgenden Beispiel wird die Angabe einer Named Pipe veranschaulicht:

np:\\.\pipe\MSSQL$MYINST01\sql\query

Diese Zeile gibt das Named Pipe-Protokoll, eine Named Pipe auf dem lokalen Computer (\\.\pipe), den Namen des SQL Server instance (MSSQL$MYINST01) und den Standardnamen der benannten Pipe (sql/query) an.

Wenn weder ein Protokoll noch das netzwerk-Schlüsselwort (keyword) angegeben ist, verwenden SQL Server Native Client die in SQL Server-Konfigurations-Manager angegebene Protokollreihenfolge.

port gibt den Port auf dem angegebenen Server an, zu dem eine Verbindung hergestellt werden soll. In der Standardeinstellung verwendet SQL Server den Port 1433.

Leerzeichen werden am Anfang des Werts ignoriert, der an den Server in ODBC-Verbindungszeichenfolgen übergeben wird, wenn SQL Server Native Client verwendet wird.
ServerSPN Der SPN für den Server. Der Standardwert ist eine leere Zeichenfolge. Eine leere Zeichenfolge bewirkt, dass SQL Server Native Client den standardmäßigen, vom Treiber generierten SPN verwendet.
StatsLog_On Bei "Ja" wird die Erfassung SQL Server Native Client ODBC-Treiberleistungsdaten aktiviert. Bei "nein" sind SQL Server Native Client ODBC-Treiberleistungsdaten für die Verbindung nicht verfügbar.
StatsLogFile Vollständiger Pfad und Dateiname einer Datei, die zum Aufzeichnen SQL Server Native Client ODBC-Treiberleistungsstatistiken verwendet wird.
Trusted_Connection Bei "ja" weist der SQL Server Native Client ODBC-Treiber an, den Windows-Authentifizierungsmodus für die Anmeldeüberprüfung zu verwenden. Weist andernfalls den SQL Server Native Client ODBC-Treiber an, einen SQL Server Benutzernamen und ein Kennwort für die Anmeldeüberprüfung zu verwenden, und die Schlüsselwörter UID und PWD müssen angegeben werden.
TrustServerCertificate Aktiviert bei Verwendung mit Encrypt die Verschlüsselung mithilfe eines selbstsignierten Serverzertifikats.
UID Ein gültiges SQL Server-Anmeldekonto. Bei Verwendung der Windows-Authentifizierung muss nicht UID angegeben werden.
UseProcForPrepare Diese Schlüsselwort (keyword) ist veraltet, und ihre Einstellung wird vom SQL Server Native Client ODBC-Treiber ignoriert.
WSID Die ID der Arbeitsstation. Normalerweise ist dies der Netzwerkname des Computers, auf dem sich die Anwendung befindet (optional). Falls angegeben, wird dieser Wert im Master.dbo.sysprocesses-Spaltenhostnamen gespeichert und von sp_who und der HOST_NAME-Funktion zurückgegeben.

Hinweis

Regionale Konvertierungseinstellungen gelten für Währungs-, Zahlen-, Datums- und Uhrzeitdatentypen. Die Konvertierungseinstellung gilt nur für Ausgabekonvertierungen und ist nur sichtbar, wenn Währungs-, Zahlen-, Datums- oder Uhrzeitwerte in Zeichenfolgen konvertiert werden.

Der SQL Server Native Client ODBC-Treiber verwendet die Gebietsschemaregistrierungseinstellungen für den aktuellen Benutzer. Der Treiber berücksichtigt nicht das Gebietsschema des aktuellen Threads, wenn die Anwendung es nach der Verbindung festlegt, z. B. durch Aufrufen von SetThreadLocale.

Das Verändern des regionalen Verhaltens einer Datenquelle kann Anwendungsfehler verursachen. Eine Anwendung, die Datumszeichenfolgen analysiert und erwartet, dass Datumszeichenfolgen wie von ODBC definiert angezeigt werden, kann durch ändern dieses Werts beeinträchtigt werden.

Verbindungszeichenfolgen-Schlüsselwörter für den OLE DB-Anbieter

OLE DB-Anwendungen können Datenquellenobjekte auf zweierlei Weise initialisieren:

  • IDBInitialize::Initialize

  • IDataInitialize::GetDataSource

Im ersten Fall kann die Anbieterzeichenfolge zum Initialisieren der Verbindungseigenschaften verwendet werden, indem die DBPROP_INIT_PROVIDERSTRING-Eigenschaft im DBPROPSET_DBINIT-Eigenschaftensatz festgelegt wird. Im zweiten Fall kann eine Initialisierungszeichenfolge an die IDataInitialize::GetDataSource-Methode übergeben werden, um die Verbindungseigenschaften zu initialisieren. Beide Methoden initialisieren die gleichen OLE DB-Verbindungseigenschaften, es werden jedoch andere Sätze von Schlüsselwörtern verwendet. Die von IDataInitialize::GetDataSource verwendeten Schlüsselwörter entsprechen mindestens der Beschreibung der in der Gruppe der Initialisierungseigenschaften enthaltenen Eigenschaften.

Bei jeder Anbieterzeichenfolgeneinstellung, für die eine zugehörige OLE DB-Eigenschaft vorhanden ist, die auf einen bestimmten Standardwert festgelegt ist oder auf einen spezifischen Wert festgelegt wird, überschreibt der OLE DB-Eigenschaftswert die Einstellung in der Anbieterzeichenfolge.

Für boolesche Eigenschaften, die in Anbieterzeichenfolgen über DBPROP_INIT_PROVIDERSTRING-Werte festgelegt werden, werden die Werte "yes" und "no" angegeben. Für boolesche Eigenschaften, die in Initialisierungszeichenfolgen über IDataInitialize::GetDataSource festgelegt werden, werden die Werte TRUE und FALSE angegeben.

Anwendungen, die IDataInitialize::GetDataSource verwenden, können auch die von IDBInitialize::Initialize verwendeten Schlüsselwörter verwenden, jedoch nur für Eigenschaften, die keinen Standardwert aufweisen. Wenn eine Anwendung sowohl das IDataInitialize::GetDataSource-Schlüsselwort als auch das IDBInitialize::Initialize-Schlüsselwort in der Initialisierungszeichenfolge angibt, dann wird die IDataInitialize::GetDataSource-Schlüsselworteinstellung verwendet. Es wird dringend empfohlen, dass Anwendungen keine IDBInitialize::Initialize-Schlüsselwörter in IDataInitialize:GetDataSource-Verbindungszeichenfolgen verwenden, da dieses Verhalten in künftigen Versionen möglicherweise nicht beibehalten wird.

Hinweis

Eine von IDataInitialize::GetDataSource übergebene Verbindungszeichenfolge wird in Eigenschaften konvertiert und mithilfe von IDBProperties::SetProperties angewendet. Wenn Komponentendienste die Eigenschaftenbeschreibung in IDBProperties::GetPropertyInfo gefunden haben, wird diese Eigenschaft als eigenständige Eigenschaft angewendet. Andernfalls wird sie mithilfe der DBPROP_PROVIDERSTRING-Eigenschaft angewendet. Wenn Sie z. B. die Verbindungszeichenfolge Datenquelle=Server1;Server=Server2 angeben, wird Datenquelle als Eigenschaft festgelegt, aber Server wird in einer Anbieterzeichenfolge verwendet.

Wenn Sie mehrere Instanzen einer anbieterspezifischen Eigenschaft angeben, wird der erste Wert der ersten Eigenschaft verwendet.

Für Verbindungszeichenfolgen, die in OLE DB-Anwendungen unter Verwendung von DBPROP_INIT_PROVIDERSTRING mit IDBInitialize::Initialize verwendet werden, gilt die folgende Syntax:

connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string

empty-string ::=

attribute ::= attribute-keyword=[{]attribute-value[}]

attribute-value ::= character-string

attribute-keyword ::= identifier

Attributwerte können optional in geschweifte Klammern eingeschlossen werden, und es wird empfohlen, dies zu tun. Dadurch werden Probleme vermieden, wenn Attributwerte andere Zeichen als alphanumerische Zeichen enthalten. Da die erste rechte geschweifte Klammer als Endzeichen des Werts interpretiert wird, können Werte keine rechten geschweiften Klammern enthalten.

Ein Leerzeichen nach dem Gleichheitszeichen (=) eines Verbindungszeichenfolgen-Schlüsselworts wird als Literal interpretiert. Dies gilt auch, wenn der Wert in Anführungszeichen gesetzt ist.

In der folgenden Tabelle werden die Schlüsselwörter beschrieben, die mit DBPROP_INIT_PROVIDERSTRING verwendet werden können.

Schlüsselwort Initialisierungseigenschaft BESCHREIBUNG
Addr SSPROP_INIT_NETWORKADDRESS Synonym für "Address".
Adresse SSPROP_INIT_NETWORKADDRESS Die Netzwerkadresse einer Instanz von SQL Server in der Organisation.

Weitere Informationen zur gültigen Adresssyntax finden Sie in der Beschreibung des Address ODBC-Schlüsselwort (keyword) weiter unten in diesem Thema.
APP SSPROP_INIT_APPNAME Die Zeichenfolge, die die Anwendung identifiziert.
ApplicationIntent SSPROP_INIT_APPLICATIONINTENT Deklariert den Arbeitsauslastungstyp der Anwendung beim Herstellen einer Verbindung mit einem Server. Mögliche Werte sind ReadOnly und ReadWrite.

Der Standardwert lautet ReadWrite. Weitere Informationen zur Unterstützung SQL Server Native Client für Always On Verfügbarkeitsgruppen finden Sie unter SQL Server Native Client Support für Hochverfügbarkeit, Notfallwiederherstellung.
AttachDBFileName SSPROP_INIT_FILENAME Der Name der Primärdatenbank (einschließlich des vollständigen Pfadnamens) einer anfügbaren Datenbank. Für die Verwendung von AttachDBFileName muss auch der Datenbankname mit dem Schlüsselwort „Database“ für die Anbieterzeichenfolge angegeben werden. Wenn die Datenbank zuvor angefügt worden war, fügt SQL Server sie nicht erneut an (die angefügte Datenbank wird standardmäßig für die Verbindung verwendet).
Automatisches Übersetzen SSPROP_INIT_AUTOTRANSLATE Synonym für "AutoTranslate".
AutoTranslate SSPROP_INIT_AUTOTRANSLATE Konfiguriert die OEM-/ANSI-Zeichenübersetzung. Gültige Werte sind "yes" und "no".
Datenbank DBPROP_INIT_CATALOG Der Datenbankname.
DataTypeCompatibility SSPROP_INIT_DATATYPECOMPATIBILITY Gibt den Modus der zu verwendenden Datentypbehandlung an. Zulässig sind der Wert "0" für Anbieterdatentypen und der Wert "80" für SQL Server 2000-Datentypen.
Encrypt SSPROP_INIT_ENCRYPT Gibt an, ob Daten vor dem Senden über das Netzwerk verschlüsselt werden sollen. Mögliche Werte sind "yes" und "no". Der Standardwert lautet "no".
FailoverPartner SSPROP_INIT_FAILOVERPARTNER Der Name des für die Datenbankspiegelung zu verwendenden Failoverservers.
FailoverPartnerSPN SSPROP_INIT_FAILOVERPARTNERSPN Der SPN für den Failoverpartner. Der Standardwert ist eine leere Zeichenfolge. Eine leere Zeichenfolge bewirkt, dass SQL Server Native Client den standardmäßigen, vom Anbieter generierten SPN verwendet.
Sprache SSPROP_INIT_CURRENTLANGUAGE Die SQL Server-Sprache.
MarsConn SSPROP_INIT_MARSCONNECTION Ermöglicht oder unterbindet die Verwendung von mehreren aktiven Resultsets (MARS) bei einer Verbindung, wenn auf dem Server SQL Server 2005 (9.x) oder höher ausgeführt wird. Mögliche Werte sind "yes" und "no". Der Standardwert lautet "no".
Net SSPROP_INIT_NETWORKLIBRARY Synonym für "Network".
Network SSPROP_INIT_NETWORKLIBRARY Die Netzwerkbibliothek, die zum Herstellen einer Verbindung mit einer Instanz von SQL Server in der Organisation verwendet wird.
Network Library SSPROP_INIT_NETWORKLIBRARY Synonym für "Network".
PacketSize SSPROP_INIT_PACKETSIZE Netzwerkpaketgröße. Der Standardwert lautet 4096.
PersistSensitive DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO Akzeptiert die Zeichenfolgen "yes" und "no" als Werte. Wenn "no" angegeben wird, darf das Datenquellenobjekt keine vertraulichen Authentifizierungsinformationen persistent speichern.
PWD DBPROP_AUTH_PASSWORD Das Anmeldekennwort für SQL Server.
Server DBPROP_INIT_DATASOURCE Der Name einer SQL Server-Instanz in der Organisation.

Ohne Angabe eines Namens wird eine Verbindung mit der Standardinstanz auf dem lokalen Computer hergestellt.

Weitere Informationen zur gültigen Adresssyntax finden Sie in der Beschreibung der Server ODBC-Schlüsselwort (keyword) in diesem Thema.
ServerSPN SSPROP_INIT_SERVERSPN Der SPN für den Server. Der Standardwert ist eine leere Zeichenfolge. Eine leere Zeichenfolge bewirkt, dass SQL Server Native Client den standardmäßigen, vom Anbieter generierten SPN verwendet.
Timeout DBPROP_INIT_TIMEOUT Der Zeitraum (in Sekunden), der bis zum Abschluss der Datenquelleninitialisierung abgewartet werden soll.
Trusted_Connection DBPROP_AUTH_INTEGRATED Bei "ja" weist der SQL Server Native Client OLE DB-Anbieter an, den Windows-Authentifizierungsmodus für die Anmeldeüberprüfung zu verwenden. Weist andernfalls den SQL Server Native Client OLE DB-Anbieter an, einen SQL Server Benutzernamen und ein Kennwort für die Anmeldeüberprüfung zu verwenden, und die Schlüsselwörter UID und PWD müssen angegeben werden.
TrustServerCertificate SSPROP_INIT_TRUST_SERVER_CERTIFICATE Akzeptiert die Zeichenfolgen "yes" und "no" als Werte. Der Standardwert lautet "no" und bedeutet, dass das Serverzertifikat überprüft wird.
UID DBPROP_AUTH_USERID Der SQL Server-Anmeldename.
UseProcForPrepare SSPROP_INIT_USEPROCFORPREP Diese Schlüsselwort (keyword) ist veraltet, und ihre Einstellung wird vom SQL Server Native Client OLE DB-Anbieter ignoriert.
WSID SSPROP_INIT_WSID Der Bezeichner der Arbeitsstation.

Verbindungszeichenfolgen, die von OLE DB-Anwendungen verwendet werden, welche IDataInitialize::GetDataSource verwenden, haben die folgende Syntax:

connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string

empty-string ::=

attribute ::= attribute-keyword=[quote]attribute-value[quote]

attribute-value ::= character-string

attribute-keyword ::= identifier

quote ::= " | '

Die Verwendung von Eigenschaften muss der jeweils dafür zulässigen Syntax entsprechen. Beispielsweise verwendet WSID geschweifte Klammern ( {} ) als Anführungszeichen, und Application Name verwendet einfache ( ' ) oder doppelte ( " ) Anführungszeichen. Es können nur Zeichenfolgeneigenschaften in Anführungszeichen gesetzt werden. Wenn Sie versuchen, eine ganze Zahl oder eine aufgezählte Eigenschaft in Anführungszeichen zu setzen, wird der Fehler angezeigt, dass die Verbindungszeichenfolge keiner OLE DB-Spezifikation entspricht.

Attributwerte können optional in einfache oder doppelte Anführungszeichen gesetzt werden, und es wird empfohlen, dies zu tun. Dadurch werden Probleme vermieden, wenn Werte andere Zeichen als alphanumerische Zeichen enthalten. Das verwendete Anführungszeichen kann auch innerhalb von Werten stehen, vorausgesetzt, dass es doppelt angegeben wird.

Ein Leerzeichen nach dem Gleichheitszeichen (=) eines Verbindungszeichenfolgen-Schlüsselworts wird als Literal interpretiert. Dies gilt auch, wenn der Wert in Anführungszeichen gesetzt ist.

Wenn eine Verbindungszeichenfolge mehrere der in der folgenden Tabelle aufgeführten Eigenschaften aufweist, wird der Wert der letzten Eigenschaft verwendet.

In der folgenden Tabelle werden die Schlüsselwörter beschrieben, die mit IDataInitialize::GetDataSource verwendet werden können:

Schlüsselwort Initialisierungseigenschaft BESCHREIBUNG
Anwendungsname SSPROP_INIT_APPNAME Die Zeichenfolge, die die Anwendung identifiziert.
Application Intent SSPROP_INIT_APPLICATIONINTENT Synonym für "ApplicationIntent".
ApplicationIntent SSPROP_INIT_APPLICATIONINTENT Deklariert den Arbeitsauslastungstyp der Anwendung beim Herstellen einer Verbindung mit einem Server. Mögliche Werte sind ReadOnly und ReadWrite.

Der Standardwert lautet ReadWrite. Weitere Informationen zur Unterstützung SQL Server Native Client für Always On Verfügbarkeitsgruppen finden Sie unter SQL Server Native Client Support für Hochverfügbarkeit, Notfallwiederherstellung.
Automatisches Übersetzen SSPROP_INIT_AUTOTRANSLATE Synonym für "AutoTranslate".
AutoTranslate SSPROP_INIT_AUTOTRANSLATE Konfiguriert die OEM-/ANSI-Zeichenübersetzung. Zulässig sind die Werte "true" und "false".
Connect Timeout DBPROP_INIT_TIMEOUT Der Zeitraum (in Sekunden), der bis zum Abschluss der Datenquelleninitialisierung abgewartet werden soll.
Current Language SSPROP_INIT_CURRENTLANGUAGE Der SQL Server-Sprachenname.
Data Source DBPROP_INIT_DATASOURCE Der Name einer SQL Server-Instanz in der Organisation.

Ohne Angabe eines Namens wird eine Verbindung mit der Standardinstanz auf dem lokalen Computer hergestellt.

Weitere Informationen zur gültigen Adresssyntax finden Sie in der Beschreibung der Server ODBC-Schlüsselwort (keyword) weiter unten in diesem Thema.
DataTypeCompatibility SSPROP_INIT_DATATYPECOMPATIBILITY Gibt den Modus der zu verwendenden Datentypbehandlung an. Erkannte Werte sind "0" für Anbieterdatentypen und "80" für SQL Server 2000 (8.x)-Datentypen.
Failoverpartner SSPROP_INIT_FAILOVERPARTNER Der Name des für die Datenbankspiegelung zu verwendenden Failoverservers.
Failover Partner SPN SSPROP_INIT_FAILOVERPARTNERSPN Der SPN für den Failoverpartner. Der Standardwert ist eine leere Zeichenfolge. Eine leere Zeichenfolge bewirkt, dass SQL Server Native Client den standardmäßigen, vom Anbieter generierten SPN verwendet.
Anfangskatalog DBPROP_INIT_CATALOG Der Datenbankname.
Anfangsdateiname SSPROP_INIT_FILENAME Der Name der Primärdatenbank (einschließlich des vollständigen Pfadnamens) einer anfügbaren Datenbank. Für die Verwendung von AttachDBFileName muss auch der Datenbankname mit dem Schlüsselwort DATABASE für die Anbieterzeichenfolge angegeben werden. Wenn die Datenbank zuvor angefügt worden war, fügt SQL Server sie nicht erneut an (die angefügte Datenbank wird standardmäßig für die Verbindung verwendet).
Integrierte Sicherheit DBPROP_AUTH_INTEGRATED Akzeptiert den Wert "SSPI" für die Windows-Authentifizierung.
MARS-Verbindung SSPROP_INIT_MARSCONNECTION Ermöglicht oder unterbindet die Verwendung von mehreren aktiven Resultsets (MARS) bei einer Verbindung. Zulässig sind die Werte "true" und "false". Der Standardwert lautet "false".
Network Address SSPROP_INIT_NETWORKADDRESS Die Netzwerkadresse einer Instanz von SQL Server in der Organisation.

Weitere Informationen zur gültigen Adresssyntax finden Sie in der Beschreibung des Address ODBC-Schlüsselwort (keyword) weiter unten in diesem Thema.
Network Library SSPROP_INIT_NETWORKLIBRARY Die Netzwerkbibliothek, die zum Herstellen einer Verbindung mit einer Instanz von SQL Server in der Organisation verwendet wird.
Packet Size SSPROP_INIT_PACKETSIZE Netzwerkpaketgröße. Der Standardwert lautet 4096.
Kennwort DBPROP_AUTH_PASSWORD Das Anmeldekennwort für SQL Server.
Persist Security Info DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO Akzeptiert die Zeichenfolgen "true" und "false" als Werte. Wenn FALSE angegeben wird, darf das Datenquellenobjekt keine vertraulichen Authentifizierungsinformationen dauerhaft speichern.
Anbieter Für SQL Server Native Client sollte dies "SQLNCLI11" sein.
Server SPN SSPROP_INIT_SERVERSPN Der SPN für den Server. Der Standardwert ist eine leere Zeichenfolge. Eine leere Zeichenfolge bewirkt, dass SQL Server Native Client den standardmäßigen, vom Anbieter generierten SPN verwendet.
TrustServerCertificate SSPROP_INIT_TRUST_SERVER_CERTIFICATE Akzeptiert die Zeichenfolgen "true" und "false" als Werte. Der Standardwert lautet "false" und bedeutet, dass das Serverzertifikat überprüft wird.
Use Encryption for Data SSPROP_INIT_ENCRYPT Gibt an, ob Daten vor dem Senden über das Netzwerk verschlüsselt werden sollen. Mögliche Werte sind "true" und "false". Der Standardwert ist FALSE.
Benutzer-ID DBPROP_AUTH_USERID Der SQL Server-Anmeldename.
Workstation ID SSPROP_INIT_WSID Der Bezeichner der Arbeitsstation.

Hinweis: In der Verbindungszeichenfolge legt die Eigenschaft „Old Password“ SSPROP_AUTH_OLD_PASSWORD fest. Dies entspricht dem aktuellen (möglicherweise abgelaufenen) Kennwort, das nicht über eine Anbieterzeichenfolgen-Eigenschaft verfügbar ist.

Schlüsselwörter für ActiveX Data Objects (ADO)-Verbindungszeichenfolgen

ADO-Anwendungen legen die ConnectionString-Eigenschaft von ADODBConnection-Objekten fest oder stellen eine Verbindungszeichenfolge als Parameter für die Open-Methode von ADODBConnection-Objekten bereit.

In ADO-Anwendungen können auch die Schlüsselwörter für die OLE DB-Methode IDBInitialize::Initialize verwendet werden, allerdings nur für Eigenschaften, die nicht über Standardwerte verfügen. Wenn eine Anwendung sowohl ADO-Schlüsselwörter als auch die IDBInitialize::Initialize-Schlüsselwörter in der Initialisierungszeichenfolge verwendet, dann wird die ADO-Schlüsselworteinstellung verwendet. Es wird dringend empfohlen, dass Anwendungen nur Schlüsselwörter für ADO-Verbindungszeichenfolgen verwenden.

Die für ADO verwendeten Verbindungszeichenfolge haben folgende Syntax:

connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string

empty-string ::=

attribute ::= attribute-keyword=["]attribute-value["]

attribute-value ::= character-string

attribute-keyword ::= identifier

Attributwerte können optional in doppelte Anführungszeichen eingeschlossen werden, und es wird empfohlen, dies zu tun. Dadurch werden Probleme vermieden, wenn Werte andere Zeichen als alphanumerische Zeichen enthalten. Attributwerte dürfen keine doppelten Anführungszeichen enthalten.

In der folgenden Tabelle werden die Schlüsselwörter beschrieben, die in einer ADO-Verbindungszeichenfolge verwendet werden können.

Schlüsselwort Initialisierungseigenschaft BESCHREIBUNG
Application Intent SSPROP_INIT_APPLICATIONINTENT Synonym für "ApplicationIntent".
ApplicationIntent SSPROP_INIT_APPLICATIONINTENT Deklariert den Arbeitsauslastungstyp der Anwendung beim Herstellen einer Verbindung mit einem Server. Mögliche Werte sind ReadOnly und ReadWrite.

Der Standardwert lautet ReadWrite. Weitere Informationen zur Unterstützung SQL Server Native Client für Always On Verfügbarkeitsgruppen finden Sie unter SQL Server Native Client Support für Hochverfügbarkeit, Notfallwiederherstellung.
Anwendungsname SSPROP_INIT_APPNAME Die Zeichenfolge, die die Anwendung identifiziert.
Automatisches Übersetzen SSPROP_INIT_AUTOTRANSLATE Synonym für "AutoTranslate".
AutoTranslate SSPROP_INIT_AUTOTRANSLATE Konfiguriert die OEM-/ANSI-Zeichenübersetzung. Zulässig sind die Werte "true" und "false".
Connect Timeout DBPROP_INIT_TIMEOUT Der Zeitraum (in Sekunden), der bis zum Abschluss der Datenquelleninitialisierung abgewartet werden soll.
Current Language SSPROP_INIT_CURRENTLANGUAGE Der SQL Server-Sprachenname.
Data Source DBPROP_INIT_DATASOURCE Der Name einer SQL Server-Instanz in der Organisation.

Ohne Angabe eines Namens wird eine Verbindung mit der Standardinstanz auf dem lokalen Computer hergestellt.

Weitere Informationen zur gültigen Adresssyntax finden Sie in der Beschreibung der Server ODBC-Schlüsselwort (keyword) in diesem Thema.
DataTypeCompatibility SSPROP_INIT_DATATYPECOMPATIBILITY Gibt den Modus der zu verwendenden Datentypbehandlung an. Zulässig sind der Wert "0" für Anbieterdatentypen und der Wert "80" für SQL Server 2000-Datentypen.
Failoverpartner SSPROP_INIT_FAILOVERPARTNER Der Name des für die Datenbankspiegelung zu verwendenden Failoverservers.
Failover Partner SPN SSPROP_INIT_FAILOVERPARTNERSPN Der SPN für den Failoverpartner. Der Standardwert ist eine leere Zeichenfolge. Eine leere Zeichenfolge bewirkt, dass SQL Server Native Client den standardmäßigen, vom Anbieter generierten SPN verwendet.
Anfangskatalog DBPROP_INIT_CATALOG Der Datenbankname.
Anfangsdateiname SSPROP_INIT_FILENAME Der Name der Primärdatenbank (einschließlich des vollständigen Pfadnamens) einer anfügbaren Datenbank. Für die Verwendung von AttachDBFileName muss auch der Datenbankname mit dem Schlüsselwort DATABASE für die Anbieterzeichenfolge angegeben werden. Wenn die Datenbank zuvor angefügt worden war, fügt SQL Server sie nicht erneut an (die angefügte Datenbank wird standardmäßig für die Verbindung verwendet).
Integrierte Sicherheit DBPROP_AUTH_INTEGRATED Akzeptiert den Wert "SSPI" für die Windows-Authentifizierung.
MARS-Verbindung SSPROP_INIT_MARSCONNECTION Ermöglicht oder unterbindet die Verwendung von mehreren aktiven Resultsets (MARS) bei einer Verbindung, wenn auf dem Server SQL Server 2005 (9.x) oder höher ausgeführt wird. Zulässig sind die Werte "true" und "false". Der Standardwert lautet "false".
Network Address SSPROP_INIT_NETWORKADDRESS Die Netzwerkadresse einer Instanz von SQL Server in der Organisation.

Weitere Informationen zur gültigen Adresssyntax finden Sie in der Beschreibung der Adress-ODBC-Schlüsselwort (keyword) in diesem Thema.
Network Library SSPROP_INIT_NETWORKLIBRARY Die Netzwerkbibliothek, die zum Herstellen einer Verbindung mit einer Instanz von SQL Server in der Organisation verwendet wird.
Packet Size SSPROP_INIT_PACKETSIZE Netzwerkpaketgröße. Der Standardwert lautet 4096.
Kennwort DBPROP_AUTH_PASSWORD Das Anmeldekennwort für SQL Server.
Persist Security Info DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO Akzeptiert die Zeichenfolgen "true" und "false" als Werte. Wenn "false" angegeben wird, darf das Datenquellenobjekt keine vertraulichen Authentifizierungsinformationen persistent speichern.
Anbieter Für SQL Server Native Client sollte dies "SQLNCLI11" sein.
Server SPN SSPROP_INIT_SERVERSPN Der SPN für den Server. Der Standardwert ist eine leere Zeichenfolge. Eine leere Zeichenfolge bewirkt, dass SQL Server Native Client den standardmäßigen, vom Anbieter generierten SPN verwendet.
TrustServerCertificate SSPROP_INIT_TRUST_SERVER_CERTIFICATE Akzeptiert die Zeichenfolgen "true" und "false" als Werte. Der Standardwert lautet "false" und bedeutet, dass das Serverzertifikat überprüft wird.
Use Encryption for Data SSPROP_INIT_ENCRYPT Gibt an, ob Daten vor dem Senden über das Netzwerk verschlüsselt werden sollen. Mögliche Werte sind "true" und "false". Der Standardwert ist FALSE.
Benutzer-ID DBPROP_AUTH_USERID Der SQL Server-Anmeldename.
Workstation ID SSPROP_INIT_WSID Der Bezeichner der Arbeitsstation.

Hinweis: In der Verbindungszeichenfolge legt die Eigenschaft „Old Password“ SSPROP_AUTH_OLD_PASSWORD fest. Dies entspricht dem aktuellen (möglicherweise abgelaufenen) Kennwort, das nicht über eine Anbieterzeichenfolgen-Eigenschaft verfügbar ist.

Siehe auch

Erstellen von Anwendungen mit SQL Server Native Client