SqlConnection.ConnectionString Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia ciąg używany do otwierania bazy danych programu SQL Server.
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
Wartość właściwości
Parametry połączenia, które zawierają nazwę źródłowej bazy danych i inne parametry potrzebne do nawiązania połączenia początkowego. Wartość domyślna to pusty ciąg.
- Atrybuty
Wyjątki
Podano nieprawidłowy argument parametrów połączenia lub nie podano wymaganego argumentu parametrów połączenia.
Przykłady
Poniższy przykład tworzy SqlConnection właściwość i ustawia ConnectionString właściwość przed otwarciem połączenia.
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;";
}
}
Poniższy przykład tworzy SqlConnection właściwość i ustawia ConnectionString właściwość przed otwarciem połączenia.
using System;
using System.Data;
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;";
}
}
Uwagi
Parametr ConnectionString jest podobny do parametrów połączenia OLE DB, ale nie jest identyczny. W przeciwieństwie do bazy danych OLE DB lub ADO zwracane parametry połączenia są takie same jak w przypadku zestawu ConnectionStringużytkowników , minus informacje o zabezpieczeniach, jeśli wartość Utrwalanie informacji zabezpieczających jest ustawiona false na (wartość domyślna). Dostawca danych programu .NET Framework dla programu SQL Server nie jest utrwalany lub zwraca hasło w parametrach połączenia, chyba że ustawiono opcję Utrwalanie informacji zabezpieczających na truewartość .
Możesz użyć ConnectionString właściwości , aby nawiązać połączenie z bazą danych. Poniższy przykład ilustruje typowe parametry połączenia.
"Persist Security Info=False;Integrated Security=true;Initial Catalog=Northwind;server=(local)"
Użyj nowego SqlConnectionStringBuilder , aby utworzyć prawidłowe parametry połączenia w czasie wykonywania. Aby uzyskać więcej informacji, zobacz Konstruktory ciągów połączeń.
Właściwość ConnectionString można ustawić tylko po zamknięciu połączenia. Wiele wartości parametrów połączenia ma odpowiednie właściwości tylko do odczytu. Po ustawieniu parametrów połączenia te właściwości są aktualizowane, z wyjątkiem przypadków wykrycia błędu. W takim przypadku żadna z właściwości nie jest aktualizowana. SqlConnection właściwości zwracają tylko te ustawienia, które są zawarte w obiekcie ConnectionString.
Aby nawiązać połączenie z komputerem lokalnym, określ wartość "(local)" dla serwera. Jeśli nazwa serwera nie zostanie określona, zostanie podjęta próba nawiązania połączenia z wystąpieniem domyślnym na komputerze lokalnym.
Zresetowanie elementu na zamkniętym połączeniu spowoduje zresetowanie ConnectionString wszystkich wartości parametrów połączenia (i powiązanych właściwości), w tym hasła. Jeśli na przykład ustawisz parametry połączenia zawierające ciąg "Database= AdventureWorks", a następnie zresetujesz parametry połączenia na wartość "Data Source=myserver; Integrated Security=true", Database właściwość nie jest już ustawiona na "AdventureWorks".
Parametry połączenia są analizowane natychmiast po ustawieniu. Jeśli podczas analizowania wystąpią błędy składni, zostanie wygenerowany wyjątek środowiska uruchomieniowego, taki jak ArgumentException, . Inne błędy można znaleźć tylko wtedy, gdy zostanie podjęta próba otwarcia połączenia.
Podstawowy format parametrów połączenia obejmuje serię par słów kluczowych/wartości rozdzielonych średnikami. Znak równości (=) łączy każde słowo kluczowe i jego wartość. Aby uwzględnić wartości, które zawierają średnik, znak pojedynczego cudzysłowu lub znak podwójnego cudzysłowu, wartość musi być ujęta w znaki podwójnego cudzysłowu. Jeśli wartość zawiera zarówno średnik, jak i znak podwójnego cudzysłowu, wartość może być ujęta w pojedynczy cudzysłów. Pojedynczy cudzysłów jest również przydatny, jeśli wartość zaczyna się znakiem podwójnego cudzysłowu. Z drugiej strony podwójny cudzysłów można użyć, jeśli wartość zaczyna się od pojedynczego cudzysłowu. Jeśli wartość zawiera znaki pojedynczego cudzysłowu i podwójnego cudzysłowu, znak cudzysłowu używany do ujęć w wartość musi zostać podwojony za każdym razem, gdy występuje w obrębie wartości.
Aby uwzględnić poprzednie lub końcowe spacje w wartości ciągu, wartość musi być ujęta w pojedynczy cudzysłów lub podwójny cudzysłów. Wszystkie spacje wiodące lub końcowe wokół liczb całkowitych, logicznych lub wyliczonych są ignorowane, nawet jeśli są ujęte w cudzysłów. Jednak spacje w ciągu literału słowa kluczowego lub wartości są zachowywane. Pojedyncze lub podwójne cudzysłów mogą być używane w parametrach połączenia bez użycia ograniczników (na przykład Źródło danych = my'Server lub Data Source= my"Server), chyba że znak cudzysłowu jest pierwszym lub ostatnim znakiem w wartości.
Słowa kluczowe nie są uwzględniane wielkości liter.
W poniższej tabeli wymieniono prawidłowe nazwy wartości słów kluczowych w obiekcie ConnectionString.
| Słowo kluczowe | Wartość domyślna | Description |
|---|---|---|
| Addr | N/A | Synonim źródła danych. |
| Adres | N/A | Synonim źródła danych. |
| App | N/A | Synonim nazwy aplikacji. |
| Intencja aplikacji — lub — Zamiar Aplikacji |
Odczyt/Zapis | Deklaruje typ obciążenia aplikacji podczas nawiązywania połączenia z serwerem. Możliwe wartości to ReadOnly i ReadWrite. Przykład:ApplicationIntent=ReadOnlyAby uzyskać więcej informacji na temat obsługi klienta SqlClient dla zawsze włączonych grup dostępności, zobacz SqlClient Support for High Availability, Disaster Recovery. |
| Nazwa aplikacji | N/A | Nazwa aplikacji. Jeśli nie podano nazwy aplikacji, "Framework Microsoft SqlClient Dostawca danych" podczas uruchamiania w programie .NET Framework i "Core Microsoft SqlClient Dostawca danych" w przeciwnym razie. Nazwa aplikacji może być 128 znaków lub mniejsza. |
| Attachdbfilename — lub — Rozszerzone właściwości — lub — Początkowa nazwa pliku |
N/A | Nazwa podstawowego pliku bazy danych, w tym pełna nazwa ścieżki dołączanej bazy danych. AttachDBFilename jest obsługiwana tylko w przypadku plików danych podstawowych z rozszerzeniem .mdf. Jeśli wartość klucza AttachDBFileName jest określona w parametrach połączenia, baza danych jest dołączona i staje się domyślną bazą danych dla połączenia. Jeśli ten klucz nie zostanie określony i jeśli baza danych została wcześniej dołączona, baza danych nie zostanie ponownie dołączona. Wcześniej dołączona baza danych będzie używana jako domyślna baza danych dla połączenia. Jeśli ten klucz zostanie określony razem z kluczem AttachDBFileName, wartość tego klucza zostanie użyta jako alias. Jeśli jednak nazwa jest już używana w innej dołączonej bazie danych, połączenie zakończy się niepowodzeniem. Ścieżka może być bezwzględna lub względna przy użyciu ciągu podstawienia DataDirectory. Jeśli jest używany element DataDirectory, plik bazy danych musi istnieć w podkatalogu katalogu wskazywanego przez ciąg podstawienia. Uwaga: Nazwy ścieżek serwera zdalnego, protokołu HTTP i UNC nie są obsługiwane. Nazwa bazy danych musi być określona za pomocą słowa kluczowego "baza danych" (lub jeden z jego aliasów), jak pokazano poniżej: "AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"Błąd zostanie wygenerowany, jeśli plik dziennika istnieje w tym samym katalogu co plik danych, a słowo kluczowe "baza danych" jest używane podczas dołączania podstawowego pliku danych. W takim przypadku usuń plik dziennika. Po dołączeniu bazy danych nowy plik dziennika zostanie automatycznie wygenerowany na podstawie ścieżki fizycznej. |
| Protokół zaświadczania | Nieokreślony | Pobiera lub ustawia wartość protokołu zaświadczania. Jeśli żadna wartość nie zostanie określona, bezpieczne enklawy są wyłączone w połączeniu. Prawidłowe wartości to: AASHGSNone (Tylko prawidłowe w wersji 3.1 i 4.1 lub nowszej)) |
| Authentication | N/A | Metoda uwierzytelniania używana do Łączenie z usługą SQL Database przy użyciu uwierzytelniania Entra ID. Prawidłowe wartości to: Active Directory Integrated, Active Directory Interactive, , Active Directory Password, Active Directory Service PrincipalActive Directory Device Code FlowActive Directory Managed Identity, Active Directory MSI, Active Directory Default, . Sql PasswordAby uzyskać dodatkowe informacje, zobacz Za pomocą uwierzytelniania Entra ID za pomocą programu SqlClient. |
| Ustawienie szyfrowania kolumn | wygaszony | Włącza lub wyłącza funkcję Always Encrypted dla połączenia. Obsługiwane wartości to: enabled i disabled |
| Limit czasu polecenia | 30 | Domyślny czas oczekiwania (w sekundach) przed zakończeniem próby wykonania polecenia i wygenerowaniem błędu. Prawidłowe wartości są większe lub równe 0 i mniejsze lub równe 2147483647. |
| Liczba prób ponownego łączenia — lub — LiczbaPonownychPróbPołączenia |
1 | Określa liczbę ponownych prób nawiązania połączenia po zidentyfikowaniu przez klienta błędu bezczynności połączenia. Prawidłowe wartości to od 0 do 255. 0 oznacza, że nie próbuj ponownie nawiązać połączenia (wyłącz odporność połączenia). Uwaga: Ponieważ wersja 5.x wartość domyślna dla punktów końcowych innych niż Azure wynosi 1. W przypadku Azure SQL punktów końcowych wartość domyślna to 2. W przypadku Azure SQL punktów końcowych bezserwerowych lub na żądanie wartość domyślna to 5, aby poprawić powodzenie połączenia dla połączeń z bezczynnym lub wstrzymanym wystąpieniem. Aby uzyskać dodatkowe informacje na temat odporności bezczynności połączenia, zobacz parametry .NET SqlConnection dotyczące ponawiania próby połączenia i Technical Article — Idle Connection Resiliency. |
| Interwał ponawiania próby połączenia — lub — InterwałPonownejPróbyPołączenia |
10 | Określa czas między poszczególnymi próbami ponawiania próby połączenia (ConnectRetryCount). Prawidłowe wartości to od 1 do 60 sekund (default=10), stosowane po pierwszej próbie ponownego nawiązania połączenia. Po wykryciu przerwanego połączenia klient natychmiast próbuje ponownie nawiązać połączenie; jest to pierwsza próba ponownego nawiązania połączenia i występuje tylko wtedy, gdy ConnectRetryCount jest większa niż 0. Jeśli pierwsza próba ponownego nawiązania połączenia zakończy się niepowodzeniem i ConnectRetryCount jest większa niż 1, klient będzie czekał ConnectRetryInterval na wypróbowanie drugiej i kolejnej próby ponownego nawiązania połączenia.Aby uzyskać dodatkowe informacje o odporności bezczynności połączenia, zobacz.NET SqlConnection parametry ponawiania próby połączenia i Technical Artykuł — Odporność bezczynności połączenia. |
| Limit czasu połączenia — lub — Limit czasu połączenia — lub — Przerwa czasowa |
15 | Czas oczekiwania na połączenie z serwerem (w sekundach) przed zakończeniem próby i wygenerowaniem błędu. Prawidłowe wartości są większe lub równe 0 i mniejsze lub równe 2147483647. Podczas otwierania połączenia z usługą Azure SQL Database ustaw limit czasu połączenia na 30 sekund. |
| Bieżący język — lub — Język |
N/A | Ustawia język używany na potrzeby ostrzeżeń serwera bazy danych lub komunikatów o błędach. Nazwa języka może być 128 znaków lub mniejsza. |
| Źródło danych — lub — Server — lub — Adres — lub — Addr — lub — Adres sieciowy |
N/A | Nazwa lub adres sieciowy wystąpienia programu SQL Server, z którym ma być nawiązane połączenie. Numer portu można określić po nazwie serwera:server=tcp:servername, portnumberPodczas określania wystąpienia lokalnego należy zawsze używać (lokalnego). Aby wymusić protokół, dodaj jeden z następujących prefiksów: np:(local), tcp:(local), lpc:(local)Możesz również nawiązać połączenie z bazą danych LocalDB w następujący sposób: server=(localdb)\\myInstanceAby uzyskać więcej informacji na temat bazy danych LocalDB, zobacz SqlClient Support for LocalDB (Obsługa klienta Sql dla bazy danych LocalDB). Źródło danych musi używać formatu TCP lub formatu nazwanych potoków. Format TCP jest następujący: - tcp:<nazwa> hosta\<nazwa wystąpienia> - tcp:<nazwa> hosta,< numer portu TCP/IP> Format TCP musi zaczynać się od prefiksu "tcp:" i następuje wystąpienie bazy danych określone przez nazwę hosta i nazwę wystąpienia. Ten format nie ma zastosowania podczas nawiązywania połączenia z usługą Azure SQL Database. Protokół TCP jest automatycznie wybierany dla połączeń z usługą Azure SQL Database, jeśli nie określono żadnego protokołu. Nazwa hosta musi być określona w jeden z następujących sposobów: - NetBIOSName - IPv4Address - IPv6Address Nazwa wystąpienia służy do rozpoznawania określonego numeru portu TCP/IP, na którym jest hostowane wystąpienie bazy danych. Można również bezpośrednio określić numer portu TCP/IP. Jeśli nazwa wystąpienia i numer portu nie są obecne, zostanie użyte domyślne wystąpienie bazy danych. Format nazwanych potoków jest następujący: - np:\\<nazwa> hosta\pipe\<nazwa potoku> Format nazwanych potoków MUSI zaczynać się od prefiksu "np:" i następuje nazwa nazwanego potoku. Nazwa hosta musi być określona w jeden z następujących sposobów: - NetBIOSName - IPv4Address - IPv6Address Nazwa potoku służy do identyfikowania wystąpienia bazy danych, z którym zostanie nawiązana .NET aplikacja. Jeśli określono wartość klucza sieciowego , prefiksy "tcp:" i "np:" nie powinny być określone. Uwaga: Możesz wymusić użycie protokołu TCP zamiast pamięci udostępnionej, prefiksując tcp: do nazwy serwera w parametrach połączenia lub przy użyciu hosta lokalnego. |
| Adres URL zaświadczania enklawy | N/A | Pobiera lub ustawia adres URL zaświadczania enklawy, który ma być używany z enklawą opartą na funkcji Always Encrypted. |
| Szyfrowanie | Wartość "true" w wersji 4.0 lub nowszej "false" w wersji 3.x i poniżej |
Rozpoznane wartości to: wersje 1– 4: true/yes i false/nowersje 5+: true/yes/mandatory, falseno//optional i .strict Gdy trueszyfrowanie TLS jest używane dla wszystkich danych wysyłanych między klientem a serwerem, jeśli serwer ma zainstalowany certyfikat. Gdy strictjest używane szyfrowanie TLS TDS 8.0, a TrustServerCertificate ustawienie jest ignorowane i traktowane jako false. Aby uzyskać więcej informacji, zobacz Składnia parametrów połączenia.Gdy Encrypt jest mandatory lub strict i TrustServerCertificate jest false, nazwa serwera (lub adres IP) w certyfikacie serwera musi dokładnie odpowiadać nazwie serwera (lub adresowi IP) określonej w parametry połączenia. W przeciwnym razie próba połączenia zakończy się niepowodzeniem. |
| Zarejestrować | 'true' |
true wskazuje, że program puli połączeń programu SQL Server automatycznie zaciąga połączenie w bieżącym kontekście transakcji wątku tworzenia. |
| Failover Partner | N/A | Nazwa serwera partnera trybu failover, na którym skonfigurowano dublowanie bazy danych. Jeśli wartość tego klucza to "", katalog początkowy musi być obecny, a jego wartość nie może być równa "". Nazwa serwera może mieć co najmniej 128 znaków. Jeśli określisz partnera trybu failover, ale serwer partnera trybu failover nie jest skonfigurowany do dublowania bazy danych, a serwer podstawowy (określony za pomocą słowa kluczowego Serwer) nie będzie dostępny, połączenie zakończy się niepowodzeniem. Jeśli określisz partnera trybu failover, a serwer podstawowy nie jest skonfigurowany do dublowania bazy danych, połączenie z serwerem podstawowym (określonym za pomocą słowa kluczowego Serwer) powiedzie się, jeśli serwer podstawowy jest dostępny. |
| Nazwa SPN partnera trybu failover — lub — FailoverPartnerSPN |
N/A | Nazwa SPN partnera awaryjnego. Wartość domyślna to pusty ciąg, który powoduje, że program SqlClient używa domyślnej, wygenerowanej przez sterownik nazwy SPN. (Dostępne tylko w wersji 5.0 lub nowszej) |
| Nazwa hosta w certyfikacie — lub — HostNameInCertificate |
N/A | Nazwa hosta do użycia podczas weryfikowania certyfikatu serwera. Jeśli nie zostanie określona, nazwa serwera ze źródła danych jest używana do weryfikacji certyfikatu. (Dostępne tylko w wersji 5.0 lub nowszej) |
| Certyfikat serwera — lub — ServerCertificate |
N/A | Ścieżka do pliku certyfikatu, który ma być zgodny z certyfikatem TLS/SSL SQL Server. Akceptowane formaty certyfikatów to PEM, DER i CER. Jeśli zostanie określony, certyfikat SQL Server jest sprawdzany, sprawdzając, czy podany certyfikat serwera jest dokładnym dopasowaniem. (Dostępne tylko w wersji 5.1 lub nowszej) |
| Katalog początkowy — lub — Baza danych |
N/A | Nazwa bazy danych. Nazwa bazy danych może mieć co najmniej 128 znaków. |
| Zabezpieczenia zintegrowane — lub — Trusted_Connection |
'false' | Gdy falseparametr , identyfikator użytkownika i hasło są określone w połączeniu. Gdy truedo uwierzytelniania są używane bieżące poświadczenia konta systemu Windows.Rozpoznane wartości to true, , falseyes, no, i sspi (zdecydowanie zalecane), które są równoważne .trueJeśli określono identyfikator użytkownika i hasło, a zabezpieczenia zintegrowane mają wartość true, identyfikator użytkownika i hasło zostaną zignorowane, a zostaną użyte zintegrowane zabezpieczenia. SqlCredential to bezpieczniejszy sposób określania poświadczeń dla połączenia korzystającego z uwierzytelniania programu SQL Server ( Integrated Security=false). |
| Preferencje adresów IP — lub — IpAddressPreference |
IPv4First | Preferencja rodziny adresów IP podczas nawiązywania połączeń TCP. Jeśli Transparent Network IP Resolution (w .NET Framework) lub Multi Subnet Failover ma wartość true, to ustawienie nie ma wpływu. Obsługiwane wartości to:IPAddressPreference=IPv4FirstIPAddressPreference=IPv6FirstIPAddressPreference=UsePlatformDefault |
| Limit czasu równoważenia obciążenia — lub — Okres istnienia połączenia |
0 | Gdy połączenie jest zwracane do puli, jego czas tworzenia jest porównywany z bieżącym czasem, a połączenie jest niszczone, jeśli ten przedział czasu (w sekundach) przekracza wartość określoną przez Connection Lifetime. Jest to przydatne w konfiguracjach klastrowanych, aby wymusić równoważenie obciążenia między uruchomionym serwerem a serwerem właśnie przeniesionym w tryb online.Wartość zero (0) powoduje, że połączenia w puli mają maksymalny limit czasu połączenia. |
| Maksymalny rozmiar puli | 100 | Maksymalna liczba połączeń dozwolonych w puli. Prawidłowe wartości są większe lub równe 1. Wartości, które są mniejsze niż minimalny rozmiar puli , generują błąd. |
| Minimalny rozmiar puli | 0 | Minimalna liczba połączeń dozwolonych w puli. Prawidłowe wartości są większe lub równe 0. Zero (0) w tym polu oznacza, że nie są początkowo otwierane żadne minimalne połączenia. Wartości większe niż maksymalny rozmiar puli generują błąd. |
| Wiele aktywnych zestawów wyników — lub — Wiele Aktywnych Zestawów Wyników (MARS) |
fałsz | Gdy trueaplikacja może obsługiwać wiele aktywnych zestawów wyników (MARS). Gdy falseaplikacja musi przetworzyć lub anulować wszystkie zestawy wyników z jednej partii, zanim będzie mogła wykonać dowolną inną partię na tym połączeniu.Rozpoznane wartości to true i false.Aby uzyskać więcej informacji, zobacz Wiele aktywnych zestawów wyników (MARS). |
| Tryb failover z wieloma podsieciami — lub — MultiSubnetFailover |
fałsz | Zawsze określaj multiSubnetFailover=True podczas nawiązywania połączenia z odbiornikiem grupy dostępności grupy dostępności programu SQL Server 2012 (lub nowszego) lub wystąpienia klastra trybu failover programu SQL Server 2012 (lub nowszego).
multiSubnetFailover=True Program SqlClient konfiguruje program SqlClient w celu zapewnienia szybszego wykrywania i nawiązywania połączenia z (obecnie) aktywnym serwerem. Możliwe wartości to Yes , NoTrue i i i False10. Przykład:MultiSubnetFailover=TrueWartość domyślna to False. Aby uzyskać więcej informacji na temat obsługi zawsze włączonych grup AGs programu SqlClient, zobacz SqlClient Support for High Availability, Disaster Recovery (Obsługa klienta SqlClient pod kątem wysokiej dostępności i odzyskiwania po awarii). |
| Biblioteka sieciowa — lub — Sieć — lub — Netto |
N/A | Biblioteka sieciowa używana do nawiązywania połączenia z wystąpieniem programu SQL Server. Obsługiwane wartości to: dbnmpntw (nazwane potoki) dbmsrpcn (Multiprotocol, Windows RPC) dbmsadsn (Apple Talk) dbmsgnet (VIA) dbmslpcn (pamięć udostępniona) dbmsspxn (IPX/SPX) dbmssocn (TCP/IP) Dbmsvinn (Banyan Vines) Odpowiednia biblioteka DLL sieci musi być zainstalowana w systemie, z którym nawiązujesz połączenie. Jeśli nie określisz sieci i używasz serwera lokalnego (na przykład "." lub "(local)"), używana jest pamięć udostępniona. W tym przykładzie biblioteka sieciowa to Win32 Winsock TCP/IP (dbmssocn), a 1433 to używany port. Network Library=dbmssocn;Data Source=000.000.000.000,1433; |
| Rozmiar pakietu | osiem tysięcy | Rozmiar w bajtach pakietów sieciowych używanych do komunikowania się z wystąpieniem programu SQL Server. Rozmiar pakietu może być większy lub równy 512 i mniejszy lub równy 32768. |
| Hasło — lub — PWD |
N/A | Hasło do logowania konta programu SQL Server. Nie polecam. Aby zachować wysoki poziom zabezpieczeń, zdecydowanie zalecamy użycie słowa kluczowego Integrated Security lub Trusted_Connection .
SqlCredential to bezpieczniejszy sposób określania poświadczeń dla połączenia korzystającego z uwierzytelniania programu SQL Server.Hasło musi zawierać co najmniej 128 znaków. |
| Utrwalanie informacji zabezpieczających — lub — PersistSecurityInfo |
'false' | W przypadku ustawienia false opcji lub no (zdecydowanie zalecane) informacje poufne zabezpieczeń, takie jak hasło lub token dostępu, nie są zwracane w ramach połączenia, jeśli połączenie jest otwarte lub kiedykolwiek było otwarte. Tę właściwość należy ustawić true tylko wtedy, gdy aplikacja musi odczytać hasło z już otwartego połączenia z bazą danych. Wartość false domyślna to bezpieczniejsze ustawienie. Użycie true tej właściwości powoduje otwarcie aplikacji na zagrożenia bezpieczeństwa, takie jak przypadkowe rejestrowanie lub śledzenie hasła bazy danych.Zresetowanie parametrów połączenia spowoduje zresetowanie wszystkich wartości parametrów połączenia, w tym hasła. Rozpoznane wartości to true, false, yesi no. |
| Okres blokowania puli — lub — PoolBlockingPeriod |
Auto | Ustawia zachowanie okresu blokowania dla puli połączeń. Aby uzyskać szczegółowe informacje, zobacz PoolBlockingPeriod właściwość. |
| Łączenie zasobów | 'true' | Gdy wartość tego klucza ma wartość true, wszystkie nowo utworzone połączenia zostaną dodane do puli po zamknięciu przez aplikację. W następnej próbie otwarcia tego samego połączenia połączenie zostanie pobrane z puli. Połączenia są traktowane tak samo, jeśli mają te same parametry połączenia. Różne połączenia mają różne parametry połączenia. Wartość tego klucza może mieć wartość "true", "false", "yes" lub "no". |
| Replication | 'false' |
true jeśli replikacja jest obsługiwana przy użyciu połączenia. |
| Nazwa SPN serwera — lub — ServerSPN |
N/A | Nazwa SPN źródła danych. Wartość domyślna to pusty ciąg, który powoduje, że program SqlClient używa domyślnej, wygenerowanej przez sterownik nazwy SPN. (Dostępne tylko w wersji 5.0 lub nowszej) |
| Powiązanie transakcji | Niejawne rozłączenie | Steruje skojarzeniem połączenia z transakcją enlisted System.Transactions .Dopuszczalne wartości: Transaction Binding=Implicit Unbind;Transaction Binding=Explicit Unbind;Niejawne powiązanie powoduje odłączenie połączenia od transakcji po zakończeniu. Po odłączeniu dodatkowe żądania dotyczące połączenia są wykonywane w trybie automatycznego zatwierdzania. Właściwość System.Transactions.Transaction.Current nie jest sprawdzana podczas wykonywania żądań, gdy transakcja jest aktywna. Po zakończeniu transakcji dodatkowe żądania są wykonywane w trybie automatycznego zatwierdzania.Jeśli system zakończy transakcję (w zakresie użycia bloku) przed zakończeniem ostatniego polecenia, zgłosi wartość InvalidOperationException. Jawne powiązanie powoduje, że połączenie pozostanie dołączone do transakcji do momentu zamknięcia połączenia lub wywołania jawnego SqlConnection.TransactionEnlist(null) . Począwszy od platformy .NET Framework 4.0, zmiany w niejawne powiązanie sprawiają, że jawne powiązanie jest przestarzałe. Element InvalidOperationException jest zgłaszany, jeśli Transaction.Current nie jest transakcją enlisted lub jeśli transakcja na liście nie jest aktywna. |
| Przezroczyste rozpoznawanie adresów IP sieci — lub — Rozwiązanie Przezroczystej Sieci IP |
Zobacz opis. | Gdy wartość tego klucza jest ustawiona na true, aplikacja jest wymagana do pobrania wszystkich adresów IP dla określonego wpisu DNS i podjęcia próby nawiązania połączenia z pierwszym na liście. Jeśli połączenie nie zostanie nawiązane w ciągu 0,5 sekundy, aplikacja spróbuje nawiązać połączenie ze wszystkimi innymi osobami równolegle. Po pierwszych odpowiedziach aplikacja ustanowi połączenie z adresem IP respondenta.MultiSubnetFailover Jeśli klucz jest ustawiony na truewartość , TransparentNetworkIPResolution jest ignorowany.Failover Partner Jeśli klucz jest ustawiony, TransparentNetworkIPResolution jest ignorowany.Wartość tego klucza musi mieć truewartość , , falseyeslub no.Wartość elementu jest traktowana yes tak samo jak wartość true.Wartość elementu jest traktowana no tak samo jak wartość false.Wartości domyślne ukazano poniżej:
|
| Certyfikat serwera zaufania — lub — TrustServerCertificate |
'false' | W przypadku ustawienia wartości trueprotokół TLS jest używany do szyfrowania kanału podczas pomijania chodzenia łańcuchem certyfikatów w celu zweryfikowania zaufania. Jeśli właściwość TrustServerCertificate jest ustawiona na truefalse, a dla opcji Szyfruj ustawiono wartość , kanał nie jest szyfrowany. Rozpoznane wartości to true, false, yesi no. Aby uzyskać więcej informacji, zobacz Składnia parametrów połączenia. |
| Wersja systemu typu | N/A | Wartość ciągu wskazująca system typów oczekiwany przez aplikację. Funkcjonalność dostępna dla aplikacji klienckiej zależy od wersji programu SQL Server i poziomu zgodności bazy danych. Jawne ustawienie wersji systemu typu napisanej przez aplikację kliencką w celu uniknięcia potencjalnych problemów, które mogłyby spowodować przerwanie działania aplikacji w przypadku użycia innej wersji programu SQL Server.
Uwaga: Nie można ustawić wersji systemu typów dla kodu środowiska uruchomieniowego języka wspólnego (CLR) wykonującego proces w programie SQL Server. Aby uzyskać więcej informacji, zobacz Sql Server Common Language Runtime Integration (Integracja środowiska uruchomieniowego języka wspólnego programu SQL Server). Dopuszczalne wartości: 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; określa, że aplikacja będzie wymagać wersji 11.0.0.0 Microsoft.SqlServer.Types.dll. Inne Type System Version ustawienia będą wymagać wersji 10.0.0.0 Microsoft.SqlServer.Types.dll.Latest jest przestarzały i nie powinien być używany.
Latest jest równoważne z Type System Version=SQL Server 2008;. |
| Identyfikator użytkownika — lub — UID — lub — User |
N/A | Konto logowania programu SQL Server. Nie polecam. Aby zachować wysoki poziom zabezpieczeń, zdecydowanie zalecamy użycie słów Integrated Security kluczowych lub Trusted_Connection .
SqlCredential to bezpieczniejszy sposób określania poświadczeń dla połączenia korzystającego z uwierzytelniania programu SQL Server.Identyfikator użytkownika musi zawierać co najmniej 128 znaków. |
| Wystąpienie użytkownika | 'false' | Wartość wskazująca, czy przekierować połączenie z domyślnego wystąpienia programu SQL Server Express do wystąpienia zainicjowanego przez środowisko uruchomieniowe uruchomione na koncie obiektu wywołującego. |
| Identyfikator stacji roboczej — lub — WSID |
Nazwa komputera lokalnego | Nazwa stacji roboczej łączącej się z programem SQL Server. Identyfikator musi zawierać co najmniej 128 znaków. |
Poniższa lista zawiera prawidłowe nazwy wartości buforowania połączeń w obiekcie ConnectionString. Aby uzyskać więcej informacji, zobacz SQL Server Connection Pooling (ADO.NET).
Okres istnienia połączenia (lub limit czasu równoważenia obciążenia)
Zarejestrować
Maksymalny rozmiar puli
Minimalny rozmiar puli
Łączenie zasobów
W przypadku ustawiania wartości słowa kluczowego lub puli połączeń, które wymagają wartości logicznej, można użyć wartości "yes" zamiast "true" i "no" zamiast "false". Wartości całkowite są reprezentowane jako ciągi.
Uwaga / Notatka
Dostawca danych programu .NET Framework dla programu SQL Server używa własnego protokołu do komunikowania się z programem SQL Server. W związku z tym nie obsługuje użycia nazwy źródła danych ODBC (DSN) podczas nawiązywania połączenia z programem SQL Server, ponieważ nie dodaje warstwy ODBC.
Uwaga / Notatka
Pliki linku uniwersalnego danych (UDL) nie są obsługiwane dla dostawcy danych programu .NET Framework dla programu SQL Server.
Caution
W tej wersji aplikacja powinna zachować ostrożność podczas konstruowania parametry połączenia na podstawie danych wejściowych użytkownika (na przykład podczas pobierania identyfikatora użytkownika i informacji o haśle z okna dialogowego i dołączania go do parametry połączenia). Aplikacja powinna upewnić się, że użytkownik nie może osadzić dodatkowych parametrów parametry połączenia w tych wartościach (na przykład wprowadzając hasło jako "validpassword; database=somedb" podczas próby dołączenia do innej bazy danych). Jeśli musisz utworzyć parametry połączenia na podstawie danych wejściowych użytkownika, użyj nowego SqlConnectionStringBuilder, który weryfikuje parametry połączenia i pomaga wyeliminować ten problem. Aby uzyskać więcej informacji, zobacz Konstruktory parametrów połączenia .