SqlConnection.ConnectionString Eigenschaft

Definition

Ruft die Zeichenfolge ab, mit der eine SQL Server-Datenbank geöffnet wird, oder legt diese fest.

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

Eigenschaftswert

Die Verbindungszeichenfolge, die den Namen der Quelldatenbank und weitere für das Herstellen der Anfangsverbindung erforderliche Parameter enthält. Der Standardwert ist eine leere Zeichenfolge.

Attribute

Ausnahmen

Es wurde ein ungültiges Argument für eine Verbindungszeichenfolge bereitgestellt, oder ein erforderliches Argument für eine Verbindungszeichenfolge wurde nicht bereitgestellt.

Beispiele

Im folgenden Beispiel wird ein SqlConnection erstellt und die ConnectionString -Eigenschaft festgelegt, bevor die Verbindung geöffnet wird.

using Microsoft.Data.SqlClient;

class Program
{
    static void Main()
    {
        OpenSqlConnection();
        Console.ReadLine();
    }

    private static void OpenSqlConnection()
    {
        string connectionString = GetConnectionString();

        using (SqlConnection connection = new SqlConnection())
        {
            connection.ConnectionString = connectionString;

            connection.Open();

            Console.WriteLine("State: {0}", connection.State);
            Console.WriteLine("ConnectionString: {0}",
                connection.ConnectionString);
        }
    }

    static private string GetConnectionString()
    {
        // To avoid storing the connection string in your code, 
        // you can retrieve it from a configuration file.
        return "Data Source=MSSQL1;Initial Catalog=AdventureWorks;"
            + "Integrated Security=true;";
    }
}

Hinweise

ähnelt ConnectionString einer OLE DB-Verbindungszeichenfolge, ist aber nicht identisch. Im Gegensatz zu OLE DB oder ADO ist die zurückgegebene Verbindungszeichenfolge identisch mit dem Benutzersatz ConnectionString, abzüglich der Sicherheitsinformationen, wenn der Wert Persist Security Info auf false (Standard) festgelegt ist. Der .NET Framework-Datenanbieter für SQL Server wird das Kennwort nicht in einem Verbindungszeichenfolge beibehalten oder zurückgeben, es sei denn, Sie legen Sicherheitsinformationen beibehalten auf festtrue.
Sie können die ConnectionString -Eigenschaft verwenden, um eine Verbindung mit einer Datenbank herzustellen. Das folgende Beispiel veranschaulicht eine typische Verbindungszeichenfolge.

"Persist Security Info=False;Integrated Security=true;Initial Catalog=Northwind;server=(local)"  

Verwenden Sie das neue SqlConnectionStringBuilder , um zur Laufzeit gültige Verbindungszeichenfolgen zu erstellen. Weitere Informationen finden Sie in Connection String Builders (Verbindungszeichenfolgengeneratoren).

Die ConnectionString -Eigenschaft kann nur festgelegt werden, wenn die Verbindung geschlossen wird. Viele der Verbindungszeichenfolge-Werte verfügen über entsprechende schreibgeschützte Eigenschaften. Wenn die Verbindungszeichenfolge festgelegt ist, werden diese Eigenschaften aktualisiert, es sei denn, es wird ein Fehler erkannt. In diesem Fall wird keine der Eigenschaften aktualisiert. SqlConnection -Eigenschaften geben nur die Einstellungen zurück, die ConnectionStringin enthalten sind.

Um eine Verbindung mit einem lokalen Computer herzustellen, geben Sie "(local)" für den Server an. Wenn kein Servername angegeben wird, wird versucht, auf dem lokalen Computer eine Verbindung mit der Standard-instance herzustellen.

Beim Zurücksetzen von ConnectionString für eine geschlossene Verbindung werden alle Verbindungszeichenfolge Werte (und zugehörige Eigenschaften) einschließlich des Kennworts zurückgesetzt. Wenn Sie beispielsweise eine Verbindungszeichenfolge festlegen, die "Database= AdventureWorks" enthält, und setzen Sie dann die Verbindungszeichenfolge auf "Data Source=myserver; Integrated Security=true", ist die Database Eigenschaft nicht mehr auf "AdventureWorks" festgelegt.

Die Verbindungszeichenfolge wird unmittelbar nach dem Festlegen analysiert. Wenn beim Analysieren Syntaxfehler gefunden werden, wird eine Laufzeit-Ausnahme wie ArgumentExceptiongeneriert. Andere Fehler können nur gefunden werden, wenn versucht wird, die Verbindung zu öffnen.

Das Basisformat eines Verbindungszeichenfolge enthält eine Reihe von Schlüsselwort (keyword)-Wert-Paaren, die durch Semikolons getrennt sind. Ein Gleichheitszeichen (=) verbindet jedes Schlüsselwort mit seinem Wert. Um Werte einzuschließen, die ein Semikolon, ein einfaches Anführungszeichen oder ein doppeltes Anführungszeichen enthalten, muss der Wert in doppelte Anführungszeichen eingeschlossen werden. Wenn der Wert sowohl ein Semikolon als auch ein doppeltes Anführungszeichen enthält, kann der Wert in einfache Anführungszeichen eingeschlossen werden. Das einfache Anführungszeichen ist auch nützlich, wenn der Wert mit einem doppelten Anführungszeichen beginnt. Umgekehrt kann das doppelte Anführungszeichen verwendet werden, wenn der Wert mit einem einfachen Anführungszeichen beginnt. Wenn der Wert sowohl einfache als auch doppelte Anführungszeichen enthält, muss das Zum Einschließen des Werts verwendete Anführungszeichen jedes Mal verdoppelt werden, wenn er innerhalb des Werts auftritt.

Um vorangehende oder nachfolgende Leerzeichen in den Zeichenfolgenwert einzuschließen, muss der Wert entweder in einfache Anführungszeichen oder doppelte Anführungszeichen eingeschlossen werden. Alle führenden oder nachfolgenden Leerzeichen um ganzzahlige, boolesche oder aufgezählte Werte werden ignoriert, auch wenn sie in Anführungszeichen eingeschlossen sind. Leerzeichen innerhalb eines Zeichenfolgenliterals Schlüsselwort (keyword) oder -Werts werden jedoch beibehalten. Einfache oder doppelte Anführungszeichen können innerhalb eines Verbindungszeichenfolge ohne Trennzeichen verwendet werden (z. B. Data Source= my'Server oder Data Source= my"Server), es sei denn, ein Anführungszeichen ist das erste oder letzte Zeichen im Wert.

Bei Schlüsselwörtern wird die Groß-/Kleinschreibung nicht beachtet.

In der folgenden Tabelle sind die gültigen Namen für Schlüsselwort (keyword) Werte in der ConnectionStringaufgeführt.

Stichwort Standard BESCHREIBUNG
Addr Nicht zutreffend Synonym der Datenquelle.
Adresse Synonym der Datenquelle.
App Nicht zutreffend Synonym des Anwendungsnamens.
Application Intent

Oder

ApplicationIntent
ReadWrite Deklariert den Arbeitsauslastungstyp der Anwendung beim Herstellen einer Verbindung mit einem Server. Mögliche Werte sind ReadOnly und ReadWrite. Beispiel:

ApplicationIntent=ReadOnly

Weitere Informationen zur SqlClient-Unterstützung für AlwaysOn-Verfügbarkeitsgruppen finden Sie unter SqlClient-Unterstützung für hohe Verfügbarkeit, Notfallwiederherstellung.
Anwendungsname Nicht zutreffend Der Namen der Anwendung. Wenn kein Anwendungsname angegeben wird, "Framework Microsoft SqlClient-Datenanbieter", wenn unter .NET Framework ausgeführt wird, andernfalls "Core Microsoft SqlClient-Datenanbieter".

Ein Anwendungsname kann maximal 128 Zeichen lang sein.
AttachDBFilename

- oder -

Extended Properties

- oder -

Anfangsdateiname
Nicht zutreffend Der Name der primären Datenbankdatei, einschließlich des vollständigen Pfadnamens einer anfügenden Datenbank. AttachDBFilename wird nur für primäre Datendateien mit einer MDF-Erweiterung unterstützt.

Wenn der Wert des AttachDBFileName-Schlüssels im Verbindungszeichenfolge angegeben wird, wird die Datenbank angefügt und zur Standarddatenbank für die Verbindung.

Wenn dieser Schlüssel nicht angegeben ist und die Datenbank zuvor angefügt wurde, wird die Datenbank nicht erneut angefügt. Die zuvor angefügte Datenbank wird als Standarddatenbank für die Verbindung verwendet.

Wenn dieser Schlüssel zusammen mit dem Schlüssel AttachDBFileName angegeben wird, wird der Wert dieses Schlüssels als Alias verwendet. Wenn der Name jedoch bereits in einer anderen angefügten Datenbank verwendet wird, schlägt die Verbindung fehl.

Der Pfad kann absolut oder relativ sein, indem die DataDirectory-Ersetzungszeichenfolge verwendet wird. Wenn DataDirectory verwendet wird, muss die Datenbankdatei in einem Unterverzeichnis des Verzeichnisses vorhanden sein, auf das die Ersetzungszeichenfolge verweist. Hinweis: Remoteserver-, HTTP- und UNC-Pfadnamen werden nicht unterstützt.

Der Datenbankname muss wie folgt mit dem Schlüsselwort (keyword) "Database" (oder einem ihrer Aliase) angegeben werden:

"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"

Ein Fehler wird generiert, wenn eine Protokolldatei im gleichen Verzeichnis wie die Datendatei enthalten ist und beim Anfügen der primären Datendatei das Schlüsselwort "database" verwendet wird. Entfernen Sie in diesem Fall die Protokolldatei. Sobald die Datenbank angefügt wird, wird automatisch auf Grundlage des physischen Pfads eine neue Protokolldatei generiert.
Nachweisprotokoll NotSpecified Ruft den Wert von Attestation Protocol ab oder legt den Wert fest.

Wenn kein Wert angegeben wird, werden Secure Enclaves für die Verbindung deaktiviert.

Gültige Werte sind:
AAS
HGS
None (Nur gültig in v3.1 und v4.1+))
Authentifizierung Nicht zutreffend Die Authentifizierungsmethode, die für das Herstellen einer Verbindung mit SQL-Datenbank mithilfe der Azure Active Directory-Authentifizierung verwendet wird.

Gültige Werte sind:

Active Directory Integrated, Active Directory Interactive, Active Directory Password, Active Directory Service Principal, Active Directory Device Code Flow, Active Directory Managed Identity, Active Directory MSI, Active Directory Default, Sql Password.

Weitere Informationen finden Sie unter Verwenden der Azure Active Directory-Authentifizierung mit SqlClient.
Spaltenverschlüsselungseinstellung deaktiviert Aktiviert oder deaktiviert Always Encrypted Funktionalität für die Verbindung. Unterstützte Werte sind: enabled und disabled
Befehlstimeout 30 Die Standardwartezeit (in Sekunden), bevor der Versuch, einen Befehl auszuführen, beendet und ein Fehler generiert wird.

Gültige Werte sind größer oder gleich 0 und kleiner als oder gleich 2147483647.
Connect Retry Count (Anzahl der Verbindungsversuche)

Oder

ConnectRetryCount
1 Steuert die Anzahl der Verbindungsversuche, nachdem der Client einen Verbindungsfehler im Leerlauf identifiziert hat. Gültige Werte sind 0 bis 255. 0 bedeutet, dass Sie nicht versuchen, die Verbindung erneut herzustellen (die Verbindungsresilienz deaktivieren).

Hinweis: Seit Version 5.x ist der Standardwert für Nicht-Azure-Endpunkte 1. Für Azure SQL Endpunkte ist der Standardwert 2. Für Azure SQL serverlosen oder bedarfsgesteuerten Endpunkten ist der Standardwert 5, um den Verbindungserfolg für Verbindungen mit einem leer losen oder angehaltenen instance zu verbessern.

Weitere Informationen zur Resilienz von Verbindungen im Leerlauf finden Sie unter .NET SqlConnection parameters for connection retry und Technical Article - Idle Connection Resiliency.
Connect Retry Interval (Verbindungswiederholungsintervall)

Oder

ConnectRetryInterval
10 Gibt die Zeit zwischen den einzelnen Verbindungsversuchen an (ConnectRetryCount). Gültige Werte sind 1 bis 60 Sekunden (default=10) und werden nach dem ersten Verbindungsversuch angewendet. Wenn eine unterbrochene Verbindung erkannt wird, versucht der Client sofort, die Verbindung wiederherzustellen. Dies ist der erste Verbindungsversuch und tritt nur auf, wenn ConnectRetryCount größer als 0 ist. Wenn der erste Verbindungsversuch fehlschlägt und ConnectRetryCount größer als 1 ist, wartet der Client, ConnectRetryInterval um den zweiten und nachfolgenden Verbindungsversuch zu versuchen.

Weitere Informationen zur Resilienz von Verbindungen im Leerlauf finden Sie unter .NET SqlConnection parameters for connection retry und Technical Article - Idle Connection Resiliency.
Verbindungstimeout

- oder -

Verbindungstimeout

- oder -

Timeout
15 Die Zeitspanne (in Sekunden), die auf eine Verbindung mit dem Server wartet, bevor der Versuch beendet und ein Fehler generiert wird.

Gültige Werte sind größer oder gleich 0 und kleiner als oder gleich 2147483647.

Legen Sie beim Öffnen einer Verbindung mit einer Azure SQL-Datenbank das Timeout für die Verbindung auf 30 Sekunden fest.
Aktuelle Sprache

- oder -

Sprache
Nicht zutreffend Legt die Sprache fest, die für Datenbankserverwarnungen oder Fehlermeldungen verwendet wird.

Der Sprachname kann maximal 128 Zeichen lang sein.
Datenquelle

- oder -

Server

- oder -

Adresse

- oder -

Addr

- oder -

Netzwerkadresse
Nicht zutreffend Der Name oder die Netzwerkadresse des instance von SQL Server, mit dem eine Verbindung hergestellt werden soll. Die Portnummer kann nach dem Servernamen angegeben werden:

server=tcp:servername, portnumber

Verwenden Sie beim Angeben eines lokalen instance immer (lokal). Um ein Protokoll zu erzwingen, fügen Sie eines der folgenden Präfixe hinzu:

np:(local), tcp:(local), lpc:(local)

Sie können auch wie folgt eine Verbindung mit einer LocalDB-Datenbank herstellen:

server=(localdb)\\myInstance

Weitere Informationen zu LocalDB finden Sie unter SqlClient-Unterstützung für LocalDB.

Die Datenquelle muss das TCP-Format oder das Named Pipes-Format verwenden.

Das TCP-Format lautet wie folgt:

- tcp:<hostname>\<instance name>
- tcp:<Hostname,TCP<>/IP-Portnummer>

Das TCP-Format muss mit dem Präfix "tcp:" beginnen, gefolgt von der datenbank-instance, wie durch einen Hostnamen und einen instance Namen angegeben. Dieses Format gilt nicht, wenn eine Verbindung mit Azure SQL-Datenbank hergestellt wird. TCP wird automatisch für Verbindungen mit Azure SQL Datenbank ausgewählt, wenn kein Protokoll angegeben wird.

Der Hostname MUSS auf eine der folgenden Arten angegeben werden:

– NetBIOSName
- IPv4Address
- IPv6Address

Der instance Name wird verwendet, um eine bestimmte TCP/IP-Portnummer aufzulösen, auf der eine Datenbank instance gehostet wird. Alternativ ist auch die direkte Angabe einer TCP/IP-Portnummer zulässig. Wenn instance Name und die Portnummer nicht vorhanden sind, wird die Standarddatenbank instance verwendet.

Das Named Pipes-Format sieht wie folgt aus:

– np:\\<hostname>\pipe\<pipe name>

Das Named Pipes-Format MUSS mit dem Präfix "np:" beginnen, gefolgt von einem benannten Pipenamen.

Der Hostname MUSS auf eine der folgenden Arten angegeben werden:

– NetBIOSName
- IPv4Address
- IPv6Address

Der Pipename wird verwendet, um die Datenbank instance zu identifizieren, mit der die .NET-Anwendung eine Verbindung herstellt.

Wenn der Wert des Netzwerkschlüssels angegeben wird, sollten die Präfixe "tcp:" und "np:" nicht angegeben werden. Hinweis: Sie können die Verwendung von TCP anstelle des freigegebenen Arbeitsspeichers erzwingen, indem Sie tcp: dem Servernamen im Verbindungszeichenfolge vorangestellt oder localhost verwenden.
Enclave-Nachweis-URL Ruft die Enclave-Nachweis-URL ab, die mit Enclave-basierten Always Encrypted verwendet werden soll, oder legt diese fest.
Verschlüsseln "true" in 4.0 und höher

"false" in 3.x und niedriger
Erkannte Werte sind:
Versionen 1 - 4: true/yes und false/no
Versionen 5+: truemandatory/yes/, falseno//optional und .strict Wenn true, wird die TLS-Verschlüsselung für alle Daten verwendet, die zwischen dem Client und dem Server gesendet werden, wenn auf dem Server ein Zertifikat installiert ist. Wenn strict, wird TDS 8.0 TLS-Verschlüsselung verwendet, und die TrustServerCertificate Einstellung wird ignoriert und als false behandelt. Weitere Informationen finden Sie unter Verbindungszeichenfolgensyntax.

Wenn Encrypt oder strict und TrustServerCertificate ist, muss der Servername (oder die IP-Adresse) im Zertifikat eines Servers genau mit dem Servernamen (oder der IP-Adresse) übereinstimmen, der im Verbindungszeichenfolge angegeben istfalse.mandatory Andernfalls schlägt die Verbindung fehl.
Enlist "true" truegibt an, dass der SQL Server Verbindungspoolers die Verbindung automatisch im aktuellen Transaktionskontext des Erstellungsthreads auflistet.
Failoverpartner Nicht zutreffend Der Name des Failoverpartnerservers, auf dem die Datenbankspiegelung konfiguriert ist.

Wenn der Wert dieses Schlüssels "" ist, muss der Anfangskatalog vorhanden sein, und sein Wert darf nicht "" sein.

Der Servername kann maximal 128 Zeichen lang sein.

Wenn Sie einen Failoverpartner angeben, der Failoverpartnerserver jedoch nicht für die Datenbankspiegelung konfiguriert ist und der primäre Server (mit dem Server Schlüsselwort (keyword) angegeben) nicht verfügbar ist, tritt bei der Verbindung ein Fehler auf.

Wenn Sie einen Failoverpartner angeben und der primäre Server nicht für die Datenbankspiegelung konfiguriert ist, ist die Verbindung mit dem primären Server (angegeben mit dem Server Schlüsselwort (keyword)) erfolgreich, wenn der primäre Server verfügbar ist.
Failoverpartner-SPN

Oder

FailoverPartnerSPN
Der SPN für den Failoverpartner. Der Standardwert ist eine leere Zeichenfolge, wodurch SqlClient den standardmäßigen, vom Treiber generierten SPN verwendet.

(Nur in Version 5.0 und höher verfügbar)
Hostname im Zertifikat

Oder

HostNameInCertificate
Der Hostname, der beim Überprüfen des Serverzertifikats verwendet werden soll. Wenn nicht angegeben, wird der Servername aus der Datenquelle für die Zertifikatüberprüfung verwendet.

(Nur in Version 5.0 und höher verfügbar)
Serverzertifikat

Oder

ServerCertificate
Der Pfad zu einer Zertifikatdatei, die mit dem SQL Server TLS/SSL-Zertifikats abgeglichen werden soll. Die akzeptierten Zertifikatformate sind PEM, DER und CER. Wenn angegeben, wird das SQL Server Zertifikats überprüft, indem überprüft wird, ob die bereitgestellte ServerCertificate eine genaue Übereinstimmung ist.

(Nur in Version 5.1 und höher verfügbar)
Anfangskatalog

- oder -

Datenbank
Nicht zutreffend Der Name der Datenbank.

Der Datenbankname kann maximal 128 Zeichen lang sein.
Integrierte Sicherheit

- oder -

Trusted_Connection
"false" Wenn falseist, werden benutzer-ID und Kennwort in der Verbindung angegeben. Wenn true, werden die aktuellen Windows-Kontoanmeldeinformationen für die Authentifizierung verwendet.

Erkannte Werte sind true, false, yesno, und sspi (dringend empfohlen), was entsprichttrue.

Wenn Benutzer-ID und Kennwort angegeben sind und integrierte Sicherheit auf true festgelegt ist, werden die Benutzer-ID und das Kennwort ignoriert und die integrierte Sicherheit verwendet.

SqlCredentialist eine sicherere Möglichkeit zum Angeben von Anmeldeinformationen für eine Verbindung, die SQL Server-Authentifizierung (Integrated Security=false) verwendet.
IP-Adresseinstellung

Oder

IPAddressPreference
IPv4First Die Einstellung der IP-Adressfamilie beim Herstellen von TCP-Verbindungen. Wenn Transparent Network IP Resolution (in .NET Framework) oder Multi Subnet Failover auf true festgelegt ist, hat diese Einstellung keine Auswirkung. Unterstützte Werte sind:

IPAddressPreference=IPv4First

IPAddressPreference=IPv6First

IPAddressPreference=UsePlatformDefault
Load Balance Timeout

Oder

Verbindungslebensdauer
0 Wenn eine Verbindung an den Pool zurückgegeben wird, wird die Erstellungszeit mit der aktuellen Zeit verglichen. Wenn diese Zeitspanne (in Sekunden) größer ist als der für die Connection Lifetime angegebene Wert, wird die Verbindung zerstört. Dies ist hilfreich bei Gruppenkonfigurationen, um einen Lastenausgleich zwischen einem bereits aktiven Server und einem Server zu erzwingen, der gerade erst online gegangen ist.

Der Wert 0 (0) bewirkt, dass gepoolte Verbindungen das maximale Verbindungstimeout aufweisen.
Max Pool Size 100 Die maximale Anzahl von Verbindungen, die im Pool zulässig sind.

Gültige Werte sind größer oder gleich 1. Werte, die kleiner als die Minimale Poolgröße sind, generieren einen Fehler.
Min Pool Size 0 Die Mindestanzahl von Verbindungen, die im Pool zulässig sind.

Gültige Werte sind größer oder gleich 0. Null (0) in diesem Feld bedeutet, dass anfänglich keine Mindestverbindungen geöffnet werden.

Werte, die größer als die maximale Poolgröße sind, generieren einen Fehler.
Multiple Active Result Sets (Mehrere aktive Resultsets)

Oder

MultipleActiveResultSets
false Wenn true, kann eine Anwendung mehrere aktive Resultsets (MARS) verwalten. Wenn false, muss eine Anwendung alle Resultsets aus einem Batch verarbeiten oder abbrechen, bevor sie einen anderen Batch für diese Verbindung ausführen kann.

Gültige Werte sind true und false.

Weitere Informationen finden Sie unter Multiple Active Result Sets (MARS).
Multisubnetzfailover

Oder

MultiSubnetFailover
false Geben Sie immer anmultiSubnetFailover=True, wenn Sie eine Verbindung mit dem Verfügbarkeitsgruppenlistener einer SQL Server 2012 (oder höher) Verfügbarkeitsgruppe oder einer SQL Server 2012 -Failoverclusterinstanz (oder höher) herstellen. multiSubnetFailover=True konfiguriert SqlClient, um eine schnellere Erkennung und Verbindung mit dem (derzeit) aktiven Server zu ermöglichen. Mögliche Werte sind Yes und No, True und False oder 1 und .0 Beispiel:

MultiSubnetFailover=True

Der Standardwert ist False. Weitere Informationen zur Unterstützung von SqlClient für Always On AGs finden Sie unter SqlClient-Unterstützung für Hochverfügbarkeit, Notfallwiederherstellung.
Network Library

- oder -

Netzwerk

- oder -

Net
Nicht zutreffend Die Netzwerkbibliothek, die verwendet wird, um eine Verbindung mit einer instance von SQL Server herzustellen. Unterstützte Werte sind:

dbnmpntw (Named Pipes)

dbmsrpcn (Multiprotokoll, Windows RPC)

dbmsadsn (Apple Talk)

dbmsgnet (VIA)

dbmslpcn (Shared Memory)

dbmsspxn (IPX/SPX)

dbmssocn (TCP/IP)

Dbmsvinn (Banyan Vines)

Die entsprechende Netzwerk-DLL muss auf dem System installiert werden, mit dem Sie eine Verbindung herstellen. Wenn Sie kein Netzwerk angeben und einen lokalen Server verwenden (z. B. "." oder "(lokal)"), wird gemeinsam genutzter Arbeitsspeicher verwendet. In diesem Beispiel handelt es sich um die Netzwerkbibliothek Win32 Winsock TCP/IP (dbmssocn), wobei der Port 1433 verwendet wird.

Network Library=dbmssocn;Data Source=000.000.000.000,1433;
Packet Size 8.000 Größe der Netzwerkpakete, die für die Kommunikation mit einer instance von SQL Server verwendet werden, in Bytes.

Die Paketgröße kann größer oder gleich 512 und kleiner als oder gleich 32768 sein.
Kennwort

- oder -

PWD
Nicht zutreffend Das Kennwort für das SQL Server Konto, das sich anmeldet. Nicht empfohlen. Um ein hohes Maß an Sicherheit zu gewährleisten, wird dringend empfohlen, stattdessen die Integrated SecurityTrusted_Connection oder Schlüsselwort (keyword) zu verwenden. SqlCredentialist eine sicherere Möglichkeit, Anmeldeinformationen für eine Verbindung anzugeben, die SQL Server-Authentifizierung verwendet.

Das Kennwort muss maximal 128 Zeichen lang sein.
Sicherheitsinformationen permanent speichern

- oder -

PersistSecurityInfo
"false" Bei Festlegung auf false oder no (dringend empfohlen) werden sicherheitsrelevante Informationen, z. B. das Kennwort oder das Zugriffstoken, nicht als Teil der Verbindung zurückgegeben, wenn die Verbindung geöffnet ist oder sich jemals in einem geöffneten Zustand befunden hat. Diese Eigenschaft sollte nur dann auf true festgelegt werden, wenn Ihre Anwendung das Kennwort aus einer bereits geöffneten Datenbankverbindung lesen muss. Der Standardwert von false ist die sicherere Einstellung. Die Verwendung true für diese Eigenschaft öffnet Ihre Anwendung für Sicherheitsrisiken, z. B. versehentliches Protokollieren oder Nachverfolgen des Datenbankkennworts.

Beim Zurücksetzen des Verbindungszeichenfolge werden alle Verbindungszeichenfolge Werte zurückgesetzt, einschließlich des Kennworts. Erkannte Werte sind true, false, yes und no.
Pool Blocking Period (Blockierungszeitraum für einen Pool)

Oder

PoolBlockingPeriod
Automatisch Legt das Blockierzeitverhalten für einen Verbindungspool fest. Weitere Informationen finden Sie in der Eigenschaft PoolBlockingPeriod.
Pooling "true" Wenn der Wert dieses Schlüssels auf true festgelegt ist, wird jede neu erstellte Verbindung dem Pool hinzugefügt, wenn sie von der Anwendung geschlossen wird. Beim nächsten Versuch, dieselbe Verbindung zu öffnen, wird diese Verbindung aus dem Pool gezogen.

Connections gelten als identisch, wenn sie über die gleichen Verbindungszeichenfolge verfügen. Verschiedene Verbindungen weisen unterschiedliche Verbindungszeichenfolgen auf.

Der Wert dieses Schlüssels kann "true", "false", "yes" oder "no" sein.
Replikation "false" true , wenn die Replikation über die Verbindung unterstützt wird.
Server-SPN

Oder

ServerSPN
Der SPN für die Datenquelle. Der Standardwert ist eine leere Zeichenfolge, die dazu führt, dass SqlClient den vom Treiber generierten Standard-SPN verwendet.

(Nur verfügbar in v5.0+)
Transaktion Binding Implicit Unbind Steuert die Verbindungszuordnung mit einer eingetragenen System.Transactions Transaktion.

Mögliche Werte:

Transaction Binding=Implicit Unbind;

Transaction Binding=Explicit Unbind;

Implizites Aufheben der Bindung bewirkt, dass die Verbindung von der Transaktion getrennt wird, wenn sie endet. Nach der Trennung werden im Autocommit-Modus zusätzliche Anforderungen für die Verbindung ausgeführt. Die System.Transactions.Transaction.Current-Eigenschaft wird nicht überprüft, wenn Anforderungen ausgeführt werden, solange die Transaktion aktiv ist. Nach Ende der Transaktion werden im Autocommit-Modus zusätzliche Anforderungen ausgeführt.

Wenn das System die Transaktion (im Bereich eines using-Blocks) beendet, bevor der letzte Befehl abgeschlossen ist, wird ausgelöst InvalidOperationException.

Explizites Aufheben der Bindung bewirkt, dass die Verbindung an die Transaktion angefügt bleibt, bis die Verbindung geschlossen oder eine explizite SqlConnection.TransactionEnlist(null) aufgerufen wird. Ab .NET Framework 4.0 werden explizite Unbind-Änderungen überflüssig. Eine InvalidOperationException wird ausgelöst, wenn es sich bei Transaction.Current nicht um die eingetragene Transaktion handelt, oder wenn die eingetragene Transaktion nicht aktiv ist.
Transparent Network IP Resolution (Transparente Netzwerk-IP-Adressauflösung)

Oder

TransparentNetworkIPResolution
Siehe Beschreibung. Wenn der Wert dieses Schlüssels auf true festgelegt wird, muss die Anwendung alle IP-Adressen für einen bestimmten DNS-Eintrag abrufen und versuchen, mit der ersten Adresse auf der Liste eine Verbindung herzustellen. Wenn die Verbindung nicht innerhalb von 0,5 Sekunden hergestellt wird, versucht die Verbindung, parallel mit allen anderen Adressen eine Verbindung herzustellen. Wenn die erste Adresse antwortet, stellt die Anwendung eine Verbindung mit der antwortenden IP-Adresse her.

Wenn der MultiSubnetFailover Schlüssel auf truefestgelegt ist, TransparentNetworkIPResolution wird ignoriert.

Wenn der Failover Partner Schlüssel festgelegt ist, TransparentNetworkIPResolution wird ignoriert.

Der Wert dieses Schlüssels muss , false, yesoder noseintrue.

Ein Wert von yes wird mit einem Wert von truebehandelt.

Ein Wert von no wird mit einem Wert von falsebehandelt.

Die Standardwerte sind wie folgt:

  • false Wenn:

    • Herstellen einer Verbindung mit Azure SQL Datenbank, in der die Datenquelle mit endet:

      • .database.chinacloudapi.cn
      • .database.usgovcloudapi.net
      • .database.cloudapi.de
      • .database.windows.net
    • Authentication ist "Active Directory Password" oder "Active Directory Integrated"
  • true in allen anderen Fällen.
TrustServerCertificate

Oder

TrustServerCertificate
"false" Wenn auf truefestgelegt ist, wird TLS verwendet, um den Kanal zu verschlüsseln, wenn das Durchlaufen der Zertifikatkette zur Überprüfung der Vertrauensstellung umgangen wird. Wenn TrustServerCertificate auf true und Verschlüsseln auf falsefestgelegt ist, wird der Kanal nicht verschlüsselt. Erkannte Werte sind true, false, yes und no. Weitere Informationen finden Sie unter Verbindungszeichenfolgensyntax.
Typ Systemversion Nicht zutreffend Ein Zeichenfolgenwert, der das Typsystem angibt, das die Anwendung erwartet. Welche Funktionalität einer Clientanwendung zur Verfügung steht, hängt von der SQL Server-Version und der Kompatibilitätsstufe der Datenbank ab. Durch die explizite Festlegung der Systemversion, für die die Clientanwendung geschrieben wurde, werden potenzielle Probleme vermieden, die dazu führen könnten, dass eine Anwendung nicht funktioniert, wenn eine andere SQL Server-Version verwendet wird. Hinweis: Die Typsystemversion kann nicht für CLR-Code (Common Language Runtime) festgelegt werden, der prozessintern in SQL Server ausgeführt wird. Weitere Informationen finden Sie unter SQL Server Common Language Runtime-Integration.

Mögliche Werte:

Type System Version=SQL Server 2012;

Type System Version=SQL Server 2008;

Type System Version=SQL Server 2005;

Type System Version=Latest;

Type System Version=SQL Server 2012; gibt an, dass die Anwendung Version 11.0.0.0 von Microsoft.SqlServer.Types.dll erfordert. Für die anderen Type System Version Einstellungen ist Version 10.0.0.0 von Microsoft.SqlServer.Types.dll erforderlich.

Latest ist veraltet und sollte nicht verwendet werden. Latest entspricht Type System Version=SQL Server 2008;.
Benutzer-ID

- oder -

UID

- oder -

Benutzer
Nicht zutreffend Das SQL Server Anmeldekonto. Nicht empfohlen. Um ein hohes Maß an Sicherheit zu gewährleisten, wird dringend empfohlen, stattdessen die Integrated Security Schlüsselwörter oder zu Trusted_Connection verwenden. SqlCredentialist eine sicherere Möglichkeit zum Angeben von Anmeldeinformationen für eine Verbindung, die SQL Server-Authentifizierung verwendet.

Die Benutzer-ID muss maximal 128 Zeichen lang sein.
User Instance "false" Ein -Wert, der angibt, ob die Verbindung vom Standard-SQL Server Express instance zu einer laufzeitinitiierte instance umgeleitet werden soll, die unter dem Konto des Aufrufers ausgeführt wird.
Workstation ID

- oder -

WSID
Name des lokalen Computers Der Name der Arbeitsstation, die eine Verbindung mit SQL Server.

Die ID muss maximal 128 Zeichen lang sein.

Die folgende Liste enthält die gültigen Namen für Verbindungspoolingwerte innerhalb von ConnectionString. Weitere Informationen finden Sie unter SQL Server-Verbindungspooling (ADO.NET).

  • Verbindungslebensdauer (oder Lastenausgleichstimeout)

  • Enlist

  • Max Pool Size

  • Min Pool Size

  • Pooling

Wenn Sie Schlüsselwort (keyword)- oder Verbindungspoolingwerte festlegen, die einen booleschen Wert erfordern, können Sie "ja" anstelle von "true" und "nein" anstelle von "false" verwenden. Ganzzahlige Werte werden als Zeichenfolgen dargestellt.

Hinweis

Der .NET Framework-Datenanbieter für SQL Server verwendet sein eigenes Protokoll für die Kommunikation mit SQL Server. Daher wird die Verwendung eines ODBC-Datenquellennamens (DSN) beim Herstellen einer Verbindung mit SQL Server nicht unterstützt, da keine ODBC-Ebene hinzugefügt wird.

Hinweis

UDL-Dateien (Universal Data Link) werden für den .NET Framework-Datenanbieter für SQL Server nicht unterstützt.

Achtung

In dieser Version sollte die Anwendung beim Erstellen eines Verbindungszeichenfolge auf Der Grundlage von Benutzereingaben (z. B. beim Abrufen von Benutzer-ID- und Kennwortinformationen aus einem Dialogfeld und beim Anfügen an die Verbindungszeichenfolge) vorsichtshalber vorgehen. Die Anwendung sollte sicherstellen, dass ein Benutzer keine zusätzlichen Verbindungszeichenfolge Parameter in diese Werte einbetten kann (z. B. Eingabe eines Kennworts als "validpassword; database=somedb" beim Versuch, an eine andere Datenbank anzufügen. Wenn Sie Verbindungszeichenfolgen basierend auf Benutzereingaben erstellen müssen, verwenden Sie die neue SqlConnectionStringBuilder, die die Verbindungszeichenfolge überprüft und hilft, dieses Problem zu beseitigen. Weitere Informationen finden Sie unter Verbindungszeichenfolgen-Generatoren .

Gilt für: