sp_set_session_context (Transact-SQL)
Si applica a: SQL Server 2016 (13.x) e versioni successive database SQL di Azure Istanza gestita di SQL di Azure Endpoint di analisi SQL di Azure Synapse Analyticsin Microsoft FabricWarehouse in Microsoft Fabric
Imposta una coppia chiave-valore nel contesto della sessione.
Convenzioni di sintassi Transact-SQL
Sintassi
sp_set_session_context [ @key= ] N'key', [ @value= ] 'value'
[ , [ @read_only = ] { 0 | 1 } ]
[ ; ]
Argomenti
[ @key= ] N'key'
Chiave impostata, di tipo sysname. La dimensione massima della chiave è di 128 byte.
[ @value= ] 'value'
Valore per la chiave specificata, di tipo sql_variant. L'impostazione di un valore NULL libera la memoria. Le dimensioni massime sono pari a 8.000 byte.
[ @read_only= ] { 0 | 1 }
Flag di tipo bit. Se 1, il valore per la chiave specificata non può essere modificato di nuovo in questa connessione logica. Se 0 (impostazione predefinita), il valore può essere modificato.
Autorizzazioni
Qualsiasi utente può impostare un contesto di sessione per la sessione.
Osservazioni:
Analogamente ad altre stored procedure, solo i valori letterali e le variabili (non espressioni o chiamate di funzione) possono essere passati come parametri.
Le dimensioni totali del contesto di sessione sono limitate a 1 MB. Se si imposta un valore che causa il superamento di questo limite, l'istruzione ha esito negativo. È possibile monitorare l'utilizzo complessivo della memoria in sys.dm_os_memory_objects (Transact-SQL).
È possibile monitorare l'utilizzo complessivo della memoria eseguendo query su sys.dm_os_memory_cache_counters (Transact-SQL) come indicato di seguito: SELECT * FROM sys.dm_os_memory_cache_counters WHERE type = 'CACHESTORE_SESSION_CONTEXT';
Esempi
R. Nell'esempio seguente viene illustrato come impostare e quindi restituire una chiave di contesto delle sessioni denominata language con un valore in inglese.
EXEC sys.sp_set_session_context @key = N'language', @value = 'English';
SELECT SESSION_CONTEXT(N'language');
Nell'esempio seguente viene illustrato l'uso del flag facoltativo di sola lettura.
EXEC sys.sp_set_session_context @key = N'user_id', @value = 4, @read_only = 1;
B. Nell'esempio seguente viene illustrato come impostare e recuperare una chiave di contesto della sessione denominata client_correlation_id con un valore pari a 12323ad.
-- set value
EXEC sp_set_session_context 'client_correlation_id', '12323ad';
--check value
SELECT SESSION_CONTEXT(N'client_correlation_id');
Vedi anche
CURRENT_TRANSACTION_ID (Transact-SQL)
edizione StandardSSION_CONTEXT (Transact-SQL)
Sicurezza a livello di riga
CONTEXT_INFO (Transact-SQL)
edizione Standard T CONTEXT_INFO (Transact-SQL)
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: nel corso del 2024 verranno dismessi i problemi di GitHub come meccanismo di feedback per il contenuto e verranno sostituiti con un nuovo sistema di feedback. Per altre informazioni, vedere:Invia e visualizza il feedback per