Conexão de contexto
Aplica-se:SQL Server
O problema de acesso a dados internos é um cenário bastante comum. Ou seja, você deseja acessar o mesmo servidor no qual sua função ou seu procedimento armazenado CLR (Common Language Runtime) está em execução. Uma opção é criar uma conexão usando System.Data.SqlClient.SqlConnection
, especificar uma cadeia de conexão que aponte para o servidor local e abrir a conexão. Esse método requer a especificação de credenciais para fazer logon. A conexão está em uma sessão de banco de dados diferente do procedimento ou função armazenada, pode ter opções de SET
diferentes, está em uma transação separada, não vê suas tabelas temporárias e assim por diante.
Se o procedimento armazenado gerenciado ou o código de função estiver em execução no processo do SQL Server, isso ocorre porque alguém se conectou a esse servidor e executou uma instrução SQL para invocá-lo. Você provavelmente deseja que o procedimento ou função armazenado seja executado no contexto dessa conexão, juntamente com sua transação, SET
opções e assim por diante. Isto é chamado de conexão de contexto.
A conexão de contexto permite executar instruções Transact-SQL no mesmo contexto em que seu código foi invocado pela primeira vez. Para obter a conexão de contexto, você deve usar a palavra-chave da cadeia de conexão "conexão de contexto", como no exemplo a seguir.
using(SqlConnection connection = new SqlConnection("context connection=true"))
{
connection.Open();
// Use the connection
}
Nesta seção
Artigo | Descrição |
---|---|
conexões de contexto versus conexões regulares | Descreve as diferenças entre conexões normais e de contexto. |
restrições de em conexões de contexto e conexões regulares | Descreve as restrições em conexões normais e de contexto. |