Compartilhar via


Restrições em conexões de contexto e conexões regulares

Aplica-se:SQL Server

Este artigo discute as restrições associadas à execução de código no processo do SQL Server por meio de conexões regulares e de contexto.

Restrições em conexões de contexto

Ao desenvolver seu aplicativo, leve em consideração as restrições a seguir que se aplicam a conexões de contexto:

  • Você pode ter apenas uma conexão de contexto aberta em um determinado momento para uma determinada conexão. Se você tiver várias instruções em execução simultânea em conexões separadas, cada uma delas poderá obter sua própria conexão de contexto. A restrição não afeta solicitações simultâneas de conexões diferentes; ele afeta apenas uma determinada solicitação em uma determinada conexão.

  • Não há suporte para MARS (Vários Conjuntos de Resultados Ativos) em uma conexão de contexto.

  • A classe SqlBulkCopy não opera em uma conexão de contexto.

  • Não há suporte para atualizar o envio em lote em uma conexão de contexto

  • SqlNotificationRequest não pode ser usado com comandos que são executados em uma conexão de contexto.

  • Não há suporte para cancelar comandos em execução na conexão de contexto. O método SqlCommand.Cancel ignora silenciosamente a solicitação.

  • Nenhuma outra palavra-chave de cadeia de conexão pode ser usada quando você usa context connection=true.

  • A propriedade SqlConnection.DataSource retornará nulo se a cadeia de conexão do SqlConnection for context connection=true, em vez do nome da instância do SQL Server.

  • Definir a propriedade SqlCommand.CommandTimeout não tem efeito quando o comando é executado em uma conexão de contexto.

Restrições em conexões regulares

Ao desenvolver seu aplicativo, leve em consideração as restrições a seguir que se aplicam a conexões comuns:

  • Não há suporte para a execução de comando assíncrono em servidores internos. Incluir async=true na cadeia de conexão de um comando e, em seguida, executar o comando, resulta em System.NotSupportedException sendo geradas. Esta mensagem é exibida:

    Asynchronous processing is not supported when running inside the SQL Server process.
    
  • não há suporte para SqlDependency objeto.

  • de conexão de contexto