Udostępnij za pośrednictwem


Parametry połączenia w ADO.NET

Parametry połączenia zawiera informacje inicjowania przekazywane jako parametr od dostawcy danych do źródła danych. Dostawca danych otrzymuje parametry połączenia jako wartość DbConnection.ConnectionString właściwości. Dostawca analizuje parametry połączenia i zapewnia poprawność składni oraz że słowa kluczowe są obsługiwane. DbConnection.Open() Następnie metoda przekazuje przeanalizowane parametry połączenia do źródła danych. Źródło danych przeprowadza dalszą walidację i ustanawia połączenie.

Składnia parametrów połączenia

Parametry połączenia to rozdzielana średnikami lista par parametrów klucz/wartość:

keyword1=value; keyword2=value;

Słowa kluczowe nie są uwzględniane w wielkości liter. Jednak w zależności od źródła danych może być uwzględniana wielkość liter. Słowa kluczowe i wartości mogą zawierać znaki odstępu. Wiodące i końcowe białe znaki są ignorowane w słowach kluczowych i wartościach bez cudzysłów.

Jeśli wartość zawiera średnik, znaki sterujące Unicode lub wiodące lub końcowe białe znaki, musi być ujęta w pojedynczy lub podwójny cudzysłów. Na przykład:

Keyword=" whitespace  ";
Keyword='special;character';

Otaczający znak może nie wystąpić w obrębie ujętej wartości. W związku z tym wartość zawierająca pojedyncze cudzysłowy może być ujęta tylko w podwójny cudzysłów i na odwrót:

Keyword='double"quotation;mark';
Keyword="single'quotation;mark";

Możesz również uciec od otaczającego znaku, używając dwóch z nich:

Keyword="double""quotation";
Keyword='single''quotation';

Znaki cudzysłowu, a także znak równości, nie wymagają ucieczki, więc następujące parametry połączenia są prawidłowe:

Keyword=no "escaping" 'required';
Keyword=a=b=c

Ponieważ każda wartość jest odczytywana do następnego średnika lub końca ciągu, wartość w ostatnim przykładzie to a=b=c, a końcowy średnik jest opcjonalny.

Wszystkie parametry połączenia mają tę samą podstawową składnię opisaną wcześniej. Zestaw rozpoznanych słów kluczowych zależy jednak od dostawcy i ewoluował na przestrzeni lat od wcześniejszych interfejsów API, takich jak ODBC. Dostawca danych programu .NET Framework dla programu SQL Server (SqlClient) obsługuje wiele słów kluczowych ze starszych interfejsów API, ale ogólnie jest bardziej elastyczny i akceptuje synonimy dla wielu typowych słów kluczowych parametry połączenia.

Błędy wpisywania mogą powodować błędy. Na przykład jest prawidłowy, Integrated Security=true ale IntegratedSecurity=true powoduje błąd.

Parametry połączenia skonstruowane ręcznie w czasie wykonywania z niewalenionych danych wejściowych użytkownika są narażone na ataki polegających na wstrzyknięciu ciągu i zagrażają bezpieczeństwu w źródle danych. Aby rozwiązać te problemy, ADO.NET 2.0 wprowadzono konstruktorów parametry połączenia dla każdego dostawcy danych programu .NET Framework. Te konstruktory parametry połączenia uwidaczniają parametry jako silnie typizowane właściwości i umożliwiają zweryfikowanie parametry połączenia przed wysłaniem ich do źródła danych.

Ważne

Firma Microsoft zaleca korzystanie z najbezpieczniejszego dostępnego przepływu uwierzytelniania. Jeśli łączysz się z usługą Azure SQL, tożsamości zarządzane dla zasobów platformy Azure to zalecana metoda uwierzytelniania.

W tym obszarze

Konstruktorzy parametrów połączeń
Pokazuje, jak używać ConnectionStringBuilder klas do konstruowania prawidłowych parametry połączenia w czasie wykonywania.

Parametry połączenia i pliki konfiguracji
Pokazuje, jak przechowywać i pobierać parametry połączenia w plikach konfiguracji.

Składnia parametrów połączenia
Opisuje sposób konfigurowania parametry połączenia specyficznych dla dostawcy dla SqlClient, OracleClient, OleDbi Odbc.

Ochrona informacji o połączeniu
Demonstruje techniki ochrony informacji używanych do nawiązywania połączenia ze źródłem danych.

Zobacz też