Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Base de dados SQL no Microsoft Fabric
Associa até 128 bytes de informação binária à sessão ou ligação atual.
Transact-SQL convenções de sintaxe
Sintaxe
SET CONTEXT_INFO { binary_str | @binary_var }
Arguments
binary_str
É uma constante binária , ou uma constante que é implicitamente convertível em binária, para associar à sessão ou ligação atual.
@binary_var
É uma variável varbinária ou binária que detém um valor de contexto para associar à sessão ou ligação atual.
Observações
Como todas as Instruções SET, o SET CONTEXT_INFO afeta a sessão atual. A forma preferida de recuperar a informação de contexto para a sessão atual é usar a função CONTEXT_INFO. A informação de contexto da sessão também é armazenada nas context_info colunas das seguintes vistas do sistema:
sys.dm_exec_requestssys.dm_exec_sessions-
sys.sysprocesses(preterido)
SET CONTEXT_INFO não pode ser especificado numa função definida pelo utilizador. Não pode fornecer um valor NULL ao CONTEXT_INFO SET porque as vistas que detêm esses valores não permitem valores NULL.
O SET CONTEXT_INFO não aceita expressões que não sejam constantes ou nomes de variáveis. Para definir a informação de contexto para o resultado de uma chamada de função, deve primeiro incluir o resultado da chamada de função numa variável binária ou varbinária .
Quando emite CONTEXT_INFO SET num procedimento armazenado ou trigger, ao contrário de outras instruções SET, o novo conjunto de valores para a informação de contexto persiste após o procedimento armazenado ou disparador ser concluído.
Examples
A. Definir a informação de contexto usando uma constante
O exemplo seguinte demonstra SET CONTEXT_INFO definindo o valor e mostrando os resultados. A consulta sys.dm_exec_sessions requer permissões SELECT e VIEW SERVER STATE, enquanto a utilização da função CONTEXT_INFO não.
SET CONTEXT_INFO 0x01010101;
GO
SELECT context_info
FROM sys.dm_exec_sessions
WHERE session_id = @@SPID;
GO
B. Definir informação de contexto usando uma função
O exemplo seguinte demonstra o uso da saída de uma função para definir o valor de contexto, onde o valor da função deve ser primeiro colocado numa variável binária .
DECLARE @BinVar varbinary(128);
SET @BinVar = CAST(REPLICATE( 0x20, 128 ) AS varbinary(128) );
SET CONTEXT_INFO @BinVar;
SELECT CONTEXT_INFO() AS MyContextInfo;
GO