Поделиться через


Контекстные подключения и регулярные подключения

Область применения: SQL Server

При соединении с удаленным сервером всегда пользуйтесь обычными, а не контекстными соединениями. Если нужно подключиться к тому же серверу, на котором выполняется хранимая процедура или функция, в большинстве случаев используется контекстное соединение. Преимущества заключаются в выполнении приложений в одной области транзакций и отсутствии необходимости повторной проверки подлинности имени входа.

Кроме того, использование контекстного соединения обычно приводит к повышению производительности при меньшем потреблении ресурсов. Подключение контекста — это подключение только для процесса, поэтому оно может напрямую связаться с сервером, обходив сетевой протокол и уровни транспорта для отправки инструкций Transact-SQL и получения результатов. Также обходится процесс проверки подлинности. На следующем рисунке показаны основные компоненты управляемого поставщика SqlClient , а также как различные компоненты взаимодействуют друг с другом при использовании регулярного подключения и при использовании контекстного подключения.

Пути кода контекста и регулярного конннектирования.

Контекстное соединение требует более короткого кода и меньшего числа компонентов, поэтому запрос к серверу, как и получение результатов, происходит быстрее, чем при обычном соединении. Время выполнение запроса на сервере остается одинаковым для контекстных и обычных соединений.

В некоторых случаях, возможно, потребуется открыть отдельное обычное соединение с тем же сервером. Например, существуют определенные ограничения на использование контекстного подключения, описанного в разделе "Ограничения для регулярных и контекстных подключений".

См. также

Контекстное соединение