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


Ограничения контекстных подключений и регулярных подключений

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

В этой статье рассматриваются ограничения, связанные с кодом, выполняемым в процессе SQL Server с помощью контекста и регулярных подключений.

Ограничения на подключения контекста

При проектировании приложения учитывайте следующие ограничения, которые применяются к контекстным соединениям.

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

  • Несколько активных результирующих наборов (MARS) не поддерживаются в контекстном соединении.

  • Класс SqlBulkCopy не работает в контекстном соединении.

  • Пакетная обработка обновлений в контекстном подключении не поддерживается

  • SqlNotificationRequest нельзя использовать с командами, выполняемыми в контекстном соединении.

  • Отмена команд, выполняемых в контекстном соединении, не поддерживается. Метод SqlCommand.Cancel автоматически игнорирует запрос.

  • При использовании context connection=trueне можно использовать другие ключевые слова строки подключения.

  • Свойство SqlConnection.DataSource возвращает значение NULL, если строка подключения для SqlConnectioncontext connection=true, а не имя экземпляра SQL Server.

  • Установка свойства SqlCommand.CommandTimeout не влияет на выполнение команды в контекстном соединении.

Ограничения на регулярные подключения

При проектировании приложения учитывайте следующие ограничения, которые применяются к обычным соединениям.

  • Асинхронное выполнение команд на внутренних серверах не поддерживается. Включение async=true в строку подключения команды, а затем выполнение команды приводит к возникновению System.NotSupportedException. Появится следующее сообщение:

    Asynchronous processing is not supported when running inside the SQL Server process.
    
  • объект SqlDependency не поддерживается.

  • подключение контекста