Udostępnij przez


Połączenie kontekstowe

Pobieranie ADO.NET

Problem z dostępem do danych wewnętrznych jest dość typowym scenariuszem. Oznacza to, że chcesz uzyskać dostęp do tego samego serwera, na którym jest wykonywana przechowywana procedura lub funkcja środowiska uruchomieniowego wspólnego języka (CLR). Jedną z opcji jest utworzenie połączenia przy użyciu polecenia SqlConnection, określenie parametrów połączenia wskazujących serwer lokalny i otwarcie połączenia. Wymaga to określenia poświadczeń na potrzeby logowania. Połączenie znajduje się w innej sesji bazy danych niż procedura składowana lub funkcja, może mieć różne opcje SET, znajduje się w oddzielnej transakcji, nie widzi twoich tabel tymczasowych itp. Jeśli zarządzana procedura składowana lub kod funkcji jest wykonywany w procesie programu SQL Server, jest to spowodowane tym, że ktoś nawiązał połączenie z tym serwerem i wykonał instrukcję SQL, aby ją wywołać. Prawdopodobnie chcesz, aby procedura składowana lub funkcja działała w kontekście tego połączenia, wraz z jego transakcją, SET opcjami itd. Jest to nazywane połączeniem kontekstowym.

Połączenie kontekstowe umożliwia wykonywanie Transact-SQL instrukcji w tym samym kontekście, w którym kod został wywołany w pierwszej kolejności. Aby uzyskać bardziej szczegółowe informacje, zobacz Połączenie kontekstowe z książek programu SQL Server Online.